MySql - Es la clave primaria única por defecto?


Si defino una columna como clave primaria en MySQL, ¿también es clave única por defecto o también necesito definirla como clave única (en caso de que quiera que sea única)?

Vi esta pregunta Cuál es la diferencia b/n Clave Primaria y Clave Única que explican la diferencia entre los dos, pero no responde exactamente a mi pregunta. Does PK es UK por defecto o necesito definirlo explícitamente.

Author: Community, 2015-06-18

2 answers

La clave primaria es siempre única en cada SQL. No tienes que definirlo explícitamente como ÚNICO.

En una nota al margen: Solo puede tener una clave primaria en una tabla y nunca permite valores nulos. También puede tener solo una restricción de clave primaria en la tabla(ya que el objetivo de crear una clave primaria es identificar de forma única la fila en la tabla), pero puede tener más de una restricción de clave única en la tabla.

Ejemplo:

Detalles de un empleado tabla con EmpID como clave primaria y EmpPhoneNo como clave única.

 27
Author: Rahul Tripathi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-18 09:54:03

La clave primaria es siempre única por definición. No solo en MySQL. Por lo tanto, no necesita ninguna clave única adicional.

 3
Author: Jakub Matczak,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-18 09:45:05