Una clave es un campo o conjunto de campos que identifica de manera única cada fila. Normalmente, habrá una clave designada como clave principal, y hoy en día parece ser un campo que con frecuencia no tiene sentido (como un número de página, que solo es importante para identificar lo que está en la página).
Es posible tener una tabla con una clave para otra tabla, que se llama una clave externa. Por ejemplo, en la base de datos de una tienda en línea, puede haber una tabla para pedidos, y cada pedido tendrá un cliente asociado, por lo que cada fila en la tabla de pedidos tiene una clave externa para la tabla de clientes.
Un índice es una estructura de datos basada en uno o más campos de una tabla, que permite un acceso rápido a la tabla en función de esos campos. El índice puede identificar filas individuales (por ejemplo, un índice de la dirección de correo electrónico del cliente) o puede indicar grupos (por ejemplo, el estado exento de impuestos de los clientes). Se usa de forma muy similar al índice de un libro, o como un directorio inverso (como una guía telefónica ordenada por número de teléfono).
Una clave es principalmente una manera de pensar en la base de datos (aunque generalmente es posible decirle a la base de datos sobre claves, por lo que la base de datos puede rechazar filas con claves duplicadas, por ejemplo). Un índice es una forma de hacer que la base de datos funcione más rápido.
Pensé que podría tener más de una llave sobre una mesa. –
Solo puede tener una clave principal. Esa clave principal puede consistir en más de un campo, pero solo hay una clave. También puede tener una o más claves foráneas definidas, pero creo que pueden estar fuera del alcance de su pregunta. –