Estoy usando la base de datos mysql. Tengo una confusión entre la clave principal y clave única.

Me ayuda por favor donde debo crear primaria y clave única. Me refiero a en qué situación vamos a crear la clave única o clave principal .

InformationsquelleAutor Anuj | 2012-03-05

15 Comentarios

  1. 207

    Clave Principal:

    • Sólo puede haber una clave primaria en una tabla
    • En algunos DBMS no se puede NULL – por ejemplo, MySQL añade NOT NULL
    • Clave principal es un único identificador de la clave del registro

    Clave Única:

    • Puede ser más de una clave única de una tabla
    • Clave única puede tener NULL valores
    • Puede ser una clave candidata
    • Clave única puede ser NULL ; varias filas puede tener NULL valores y por lo tanto no puede ser considerado como «único»
    • i) sólo Puede uno en una tabla /// lo siento, pero usted puede tener la PFK no es igual como PK, pero ambos tienen PK identificador
    • una clave única puede ser clave candidata.
    • sí @Falaque tanto de fp y FK puede ser candidato
    • También quiero añadir que la clave primaria puede ser creado en varias columnas, por ejemplo, Primary key (Idcliente, ProductID). Esto se denomina clave principal compuesta. Esto es para aclarar el primer punto, como se podría tomar como es (leer una clave => una columna ) por el recién llegado a sql : )
    • passionforsql.com/… aquí está el enlace con la descripción detallada.
    • ¿Cuál es su media de ‘puede ser una clave candidata’ ?
    • «solo null está permitido» – esto no es cierto, al menos no para MySQL.
    • Clave única puede ser null y no puede ser único Medios ??
    • Probablemente quiere decir que el puede ser varias filas con un valor nulo en el caso contrario de la clave única.
    • Puede no ser el mismo de la clave única en filas diferentes?
    • Por supuesto que no. Es por eso que se llama único clave.
    • Yo sabía que. Me estaba preguntando si es posible en lugar de lo que debería hacer eso. La razón por la que pidió que se, en una de mis app, hubo un error por el que el mismo registro se salvó dos veces con la misma clave única.
    • extraño – ¿qué DBMS estaban utilizando, y fue la restricción definitivamente correcto? ciertamente suena como el que había un error en el sistema de base de datos, si es así.
    • Fue sqlite3 me fue accidentalmente de guardar el registro dos veces, por lo que fue la creación de un mismo disco dos veces.
    • Así, los medios, la primera de las diferencias. es incorrecta. Como ambos PK y el reino unido puede estar compuesto de varias columnas.
    • KB : por Lo tanto, significa, en primer diff. es incorrecta. Como ambos PK y el reino unido puede estar compuesto de varias columnas.

  2. 73

    Clave única (reino unido): Es una columna o grupo de columnas que puede identificar a una singularidad en una fila.

    Clave primaria (PK): Es también una columna o grupo de columnas que puede identificar a una singularidad en una fila.

    Por lo que la clave Principal es simplemente otro nombre para la clave única, pero la implementación predeterminada de SQL Server es diferente para Primaria y Clave Única.

    Por Defecto:

    1. PK crea un índice Agrupado y reino unido crea un Índice No Agrupado.
    2. PK no es nulo, pero el reino unido permite valores nulos (Nota: de forma Predeterminada)
    3. Sólo puede haber uno y sólo uno de PK en la tabla, pero puede haber varios reino unido
    4. Puede reemplazar la configuración predeterminada de aplicación dependiendo de su necesidad.

    Realmente depende de cuál es tu objetivo a la hora de decidir si se crea un reino unido o en el PK. De ello se desprende una analogía como
    «Si hay un equipo de tres personas, así que todos ellos son iguales, pero habrá uno de ellos que será un par de compañeros: PK y el reino unido tiene la misma relación.». Me permito sugerir la lectura de este artículo: El ejemplo dado por el autor no parecen adecuadas, pero tratar de obtener una idea general.

    http://tsqltips.blogspot.com/2012/06/difference-between-unique-key-and.html

    • leer alrededor de 10 páginas, que decir, PK puede contener más de una columna. Entonces, ¿cómo puede haber uno y sólo uno de PK en una mesa?
    • Un PK con más de una columna actúa como una sola columna con respecto a la singularidad. En PostgreSQL, al menos, esto significa que una nueva columna (con nombre predeterminado [table_name]_pkey) se agrega a la tabla (he escuchado que esto se refiere a como un sustituto de la clave). Fuente: postgresqltutorial.com/postgresql-primary-key soy nuevo en todo esto, así que te agradecería un mayor conocimiento de cartel para señalar los matices que me perdí.
    • Bueno, no es una columna. He leído mal. Es una restricción, no una columna. Todavía hay el índice agrupado, pero es más de dos columnas, en lugar de uno. Y cada columna que no es una clave principal en su propio, en lugar de todo el conjunto es una clave principal. Así que no hay más que un PK en estos casos.
  3. 40

    Para una organización o una empresa, hay muchas entidades físicas (tales como las personas, los recursos, las máquinas, etc.) y virtual de entidades (sus Tareas, transacciones, actividades).
    Normalmente, las necesidades de negocio para registrar y procesar la información de las entidades.
    Estas entidades se identifican dentro de todo un dominio de la empresa, por medio de una Clave.

    Como por RDBMS prospectivo, Clave (un.k.una Clave Candidata) es un valor o conjunto de valores que identifica de forma única una entidad.

    Para una base de datos de la Tabla, hay tantas teclas están existir y puede ser elegible para la Clave Primaria.
    De modo que todas las claves, clave primaria, clave única, etc son llamados colectivamente como Clave Candidata.
    Sin embargo, DBA seleccionado una clave de clave candidata para la búsqueda de registros se denomina clave Principal.

    Diferencia entre la Clave Principal y clave Única

    1. Comportamiento: Clave Principal se utiliza para identificar una fila (registro) en una tabla, mientras que la Única clave es evitar que los valores duplicados en una columna (con la excepción de una entrada null).

    2. Indexación: Por defecto de SQL-motor crea Índice Agrupado en la clave principal si no existe y el Índice No Agrupado en Única clave.

    3. La aceptación de valores null: clave Principal no se incluyen los valores Nulos, mientras que la Única clave posible.

    4. Existencia: Una tabla puede tener una clave principal, pero puede tener varias Única clave.

    5. Modificabilidad: Usted no puede cambiar o eliminar valores primarios, pero Única-los valores de la clave puede.

    Para obtener más información y Ejemplos:

    http://dotnetauthorities.blogspot.in/2013/11/Microsoft-SQL-Server-Training-Online-Learning-Classes-Integrity-Constraints-PrimaryKey-Unique-Key_27.html

    • En el 5to punto de decir que no podemos cambiar o eliminar valores primarios. nosotros para asegurarse de que puede cambiar los valores primarios en la tabla mediante una instrucción update.
    • hacerlo beats, el propósito de la utilización de una clave principal.
    • índice agrupado: las filas se almacenan físicamente en el disco, en el mismo orden que el índice de
  4. 26

    Una clave principal debe ser único.

    Una clave única no tiene que ser la clave primaria – ver clave candidata.

    Que es, no puede ser más que una combinación de columnas en una tabla en la que se puede identificar una fila – sólo uno de ellos puede ser seleccionado como clave principal. Los demás, aunque son únicas candidato claves.

  5. 16

    Una clave principal tiene la semántica de la identificación de la fila de una base de datos. Por lo tanto, sólo puede haber una clave primaria de una tabla dada, mientras que muchas pueden ser las claves únicas.

    También por la misma razón que una clave primaria puede ser NULO (al menos en Oracle, no estoy seguro acerca de otras bases de datos)

    Ya que identifica la fila que nunca deberían cambiar nunca. Cambio de claves primarias están obligados a causar un grave dolor y, probablemente, a la condenación eterna.

    Para ello en la mayoría de los casos, usted desea que algunos artificial id de la clave primaria que no se usa para nada, pero la identificación única de las filas de la tabla.

    Claves únicas en el otro lado puede cambiar tanto como usted desea.

    • +1 por mencionar riesgo de condenación eterna. Es el momento de presentar la teología en la base de datos relacional de la teoría.
    • PK no puede ser NULO en SQL Server y
  6. 15

    Diferencia entre la Clave Principal y Clave Única

    +-----------------------------------------+-----------------------------------------------+
    |                Primary Key              |                    Unique Key                 |
    +-----------------------------------------+-----------------------------------------------+
    | Primary Key can't accept null values.   | Unique key can accept only one null value.    |
    +-----------------------------------------+-----------------------------------------------+
    | By default, Primary key is clustered    | By default, Unique key is a unique            |
    | index and data in the database table is | non-clustered index.                          |
    | physically organized in the sequence of |                                               |
    | clustered index.                        |                                               |
    +-----------------------------------------+-----------------------------------------------+
    | We can have only one Primary key in a   | We can have more than one unique key in a     |
    | table.                                  | table.                                        |
    +-----------------------------------------+-----------------------------------------------+
    | Primary key can be made foreign key     | In SQL Server, Unique key can be made foreign |
    | into another table.                     | key into another table.                       |
    +-----------------------------------------+-----------------------------------------------+
    

    Usted puede encontrar la información detallada de:

    http://www.dotnet-tricks.com/Tutorial/sqlserver/V2bS260912-Difference-between-Primary-Key-and-Unique-Key.html

  7. 7

    Una clave Primaria es una clave única.

    Cada tabla debe tener en la mayoría de los UNA clave primaria, pero puede tener varias de clave única. Una clave principal se utiliza para identificar una fila de la tabla. Una clave principal no puede ser NULL desde NULL no es un valor.

  8. 6
    • Creo que el nombre de la tabla es employe.
    • Clave principal
    • Clave principal no puede aceptar valores null. clave principal impone la singularidad de un
      columna. Nosotros sólo puede tener una clave Primaria en una tabla.
    • Clave única
    • Clave única puede aceptar valores null. clave única recurre también a la singularidad de una columna.usted puede pensar si la clave única contiene valores nulos entonces, ¿por qué puede ser único ? sí, aunque se pueden aceptar valores null se impone la singularidad de una columna. sólo echar un vistazo a la imagen.aquí Emp_ID es primaria y de IDENTIFICACIÓN de Ciudadano es único. Espero que usted entienda. Podemos utilizar múltiples clave única de una tabla.
      diferencia entre la clave principal y clave única de
    • no podemos insertar más de uno de los valores nulos en la clave Única y no va a permitir duplicados también.
    • No es Exclusivo de la columna de clave debe tener sólo un valor NULO? Cómo vienen dos últimas filas de IDENTIFICACIÓN de Ciudadano NULL? Me estoy perdiendo algo aquí?
    • Acabo de contestar a mi propio comentario anterior. Parece MySQL permite múltiples NULL en singular también por lo que parece @Mahedi_Hasan utiliza MySQL. stackoverflow.com/questions/3712222/…
  9. 4

    Sé que esta pregunta es de varios años, pero me gustaría ofrecer una respuesta a esta explicando ¿por qué en lugar de cómo

    Propósito de Clave Principal: Para identificar una fila en una base de datos única => Una fila representa una única instancia del tipo de entidad modelada por la mesa. Una clave principal impone la integridad de una entidad, también conocido como la Integridad de Entidad. Clave principal sería un índice agrupado es decir, se define el orden en el que los datos se almacenan físicamente en una tabla.

    Propósito de la Clave Única de: Ok, con la Clave Primaria tenemos una forma de identificar una fila. Pero tengo una necesidad empresarial, que, de otra columna o un conjunto de columnas deben tener valores únicos. Bueno, técnicamente, dado que esta columna(s) es único, puede ser un candidato para hacer cumplir la integridad de entidad. Pero por lo que sabemos, esta columna puede contener datos procedentes de una organización externa que puede que tenga una duda acerca de ser único. No puedo confiar en él para proporcionar la integridad de entidad. Me acaba de llegar una clave única para cumplir con mis necesidades empresariales.

    Hay que ir!

  10. 1

    Si su diseño de Base de datos es tal que su no necesidad de clave externa, entonces usted puede ir con clave Única( pero recuerde clave única de permitir el único valor null ).

    Si la base de datos de la demanda de clave externa a continuación te dejo con ninguna opción que usted tiene que ir con la clave primaria.

    Para ver la diferencia entre singular y la clave principal de la visita aquí

  11. 0

    Simplemente la Clave Primaria, es único y no puede ser nulo, único puede ser null y no puede ser única.

    • «único puede ser null y no puede ser único». ¿Qué may not be unique significa aquí?
  12. 0

    Claves Principales

    El propósito principal de la clave primaria es proporcionar un medio para identificar cada registro de la tabla.

    La clave principal proporciona un medio para identificar la fila, el uso de los datos dentro de la fila. Una clave principal puede basarse en una o más columnas, tales como nombre y apellido; sin embargo, en muchos de los diseños, la clave principal es un número generado automáticamente a partir de una columna de identidad.

    Una clave principal tiene las siguientes características:

    1. Sólo puede haber una clave primaria de una tabla.
    2. La clave principal consta de una o más columnas.
    3. La clave principal impone la integridad de entidad de la tabla.
    4. Todas las columnas definidas debe ser definido como not NULL.
    5. La clave principal identifica de forma única una fila.
    6. Claves primarias resultado AGRUPADO único índices de forma predeterminada.

    Claves Únicas

    Una clave única, es llamada también una restricción unique. Una restricción unique puede ser utilizada para asegurar que las filas son únicos dentro de la base de datos.

    No podemos hacer ya que con la clave primaria? Sí, así es, pero una tabla puede tener varios conjuntos de columnas que desea único.

    En SQL Server la clave única tiene las siguientes características:

    1. Puede haber varias claves únicas definidas en una tabla.
    2. Claves únicas resultado en Índices Únicos no agrupados de forma predeterminada.
    3. Una o más columnas constituyen una clave única.
    4. Columna puede ser NULO, pero en uno NULO por columna está permitido.
    5. Una restricción unique se puede hacer referencia a una Restricción de Clave externa.

    fuente : aquí

  13. 0

    Clave única :-
    Se debe utilizar cuando usted tiene que dar un valor único.En el caso de
    clave única significa que los valores nulos también están permitidos.Claves únicas son las
    las llaves, que son únicos y no similares en esa columna, como por ejemplo
    su nombre de mascota.puede ser nada como null y si se preguntan en el contexto de la base de datos, a continuación, se debe señalar que cada null es diferente de otra null en la base de datos.A EXCEPCIÓN de SQL Server donde null=null es cierto


    clave primaria :-
    Se debe utilizar cuando usted tiene que dar a identificar una fila.primaria es la clave que único para cada fila en una base de datos de la restricción es que no se permiten valores null en ella.así, usted podría haber visto que la base de datos de una columna de incremento automático y es la clave principal de la tabla. además puede ser utilizado como una clave externa en la otra tabla.ejemplo de ello puede ser idpedido en una Tabla de la orden,billId en un proyecto de ley Tabla.

    ahora, volviendo a la situación cuando usarlo:-

    1) clave principal en la columna, que puede
    no se null en la tabla y que se utiliza como clave externa en otro
    tabla para la creación de la relación

    2) clave única en la tabla donde se
    no afecta en la tabla o en la totalidad de la base de datos ya sea que tome el
    null para la columna en particular como aperitivos en el restaurante es
    es posible que usted no tome aperitivos en un restaurante

  14. 0

    diferencia entre la Clave Principal y Clave Única

    Tanto clave Primaria y Clave Única se usa únicamente para definir de una fila en una tabla.
    Primary Key crea un índice agrupado de la columna, mientras que un Unique creates an unclustered index of the column.

    A Primary Key no permite NULL value, sin embargo a Unique Key permite one NULL value.

  15. 0

    Una clave principal características principales son:

    Debe contener un valor único para cada fila de datos.
    No puede contener valores nulos.
    Sólo una clave Primaria en una tabla.

    Una clave Única de las principales características son:

    También puede contener un valor único para cada fila de datos.

    También puede contener valores null.

    Múltiples claves Únicas en una tabla.

    • Que ya se ha dicho en respuesta.

Dejar respuesta

Please enter your comment!
Please enter your name here