una tipos tener tabla superclave secundaria relacional puede modelo llaves foraneas foranea datos cuantas claves clave candidatas sql composite-key candidate-key

sql - tipos - superclave modelo relacional



¿Cuál es la diferencia entre la clave candidata y la clave compuesta? (5)

Como sé, la clave candidata es una clave única que se puede utilizar como clave principal. pero no necesariamente utilizado como uno.

La clave compuesta es una clave de dos o más atributos que identifica de forma única la fila.

Estoy leyendo sobre claves de candidatos y claves compuestas. Llegué a saber que

  • una clave candidata se puede calificar como clave principal y puede ser una sola columna o una combinación de columnas
  • y una clave compuesta es también una combinación de columnas.

Para clave compuesta he referido este enlace.

¿Cómo hago una clave compuesta con SQL Server Management Studio?

Por lo tanto, cuando tanto la clave candidata como la clave compuesta son una combinación de columnas, pueden calificar como clave principal. Entonces, ¿cuál es la diferencia exacta? ¿Puedes por favor explicar con ejemplos?


Una clave candidata es solo eso: una columna o combinación de columnas que podría usarse como clave principal, es decir, una clave primaria candidata o potencial. Una clave compuesta es, por definición, dos o más columnas que podrían usarse para identificar una fila. La mayoría de las veces, cuando se habla de claves compuestas, la cuestión es si tenerla como la clave principal para tener una clave sustituta. En ocasiones, es posible que escuche a las personas referirse a una clave compuesta que no es una clave principal (es decir, no es única para todas las filas), en cuyo caso es (con suerte) solo una forma de referirse a una combinación de varios colonos en una clave no primaria campos (en lugar de hacer combinaciones cruzadas y filtrar las filas en la cláusula where).


Una clave es un conjunto de columnas que se pueden usar para identificar de forma única cada fila dentro de una tabla.

Cada mesa tiene al menos una tecla. Digamos que hemos identificado cada clave posible para la tabla. Cada una de estas claves es una clave candidata.

A medida que examinamos cada una de estas claves, la clave puede consistir en ninguna columna (!), Una columna o más de una columna, que cuando se consideran juntas identifican de forma única cada fila. El término clave compuesta se refiere específicamente a una clave que consta de más de una columna.

En SQL, se decidió que una clave debería seleccionarse y tratarse "más igual" que las otras claves de la tabla. Esta clave se llama la clave principal. Otras claves también se pueden declarar en la tabla, a las que generalmente se hace referencia como Contsraints únicos.

(!) En SQL, no se le permite declarar una clave sin columnas, aunque ocasionalmente sería útil (piense en una tabla que solo debería tener una fila, donde cada columna representa información de configuración)

Como ejemplo de una tabla que tiene varias claves, todas compuestas. Imagine un sistema de citas, donde un cliente y un consejero se reúnen en una habitación a una hora determinada:

CREATE TABLE Appointments ( ClientID int not null, CounsellorID int not null, RoomID int not null, AppointmentTime datetime not null )

Las claves candidatas para esta tabla son {ClientID, AppointmentTime}, {CounsellorID, AppointmentTime} y {RoomID, AppointmentTime}. Cualquiera de esas combinaciones de columnas podría usarse para identificar de forma única una fila en la tabla, y todas ellas son claves compuestas.

El que decimos declarar como clave principal dependerá (probablemente) de nuestra propia interpretación del "enfoque" principal del sistema. ¿Nos preocupa principalmente el uso de la sala, los clientes o los consejeros? En cualquier caso, seleccionaremos una y la declararemos clave primaria. Esperamos que también declaremos las otras claves como restricciones únicas.

O bien, podríamos decidir utilizar un sustituto y declarar una columna AppointmentID , utilizando las facilidades de numeración automática disponibles en la base de datos. Esa podría ser la clave primaria (no compuesta). Pero aún debemos declarar las otras claves para la tabla.


CLAVE DEL CANDIDATO : - La clave del candidato es una clave única y es un "candidato" por ser una clave principal. CLAVE COMPUESTA : - La "composición" de dos o más columnas como clave principal, se considera clave compuesta.


Clave de candidato: Un candidato para el campo de clave principal se conoce como clave de candidato.

Clave compuesta: la creación de más de una clave primaria se conoce conjuntamente como clave compuesta.

Actualización: una clave candidata es una clave única que se puede usar como clave principal. La clave compuesta es una clave de dos o más atributos que identifica de forma única la fila. Una clave es un conjunto de columnas que se pueden usar para identificar de forma única cada fila dentro de una tabla.