31

En el diagrama EER de MySQL Workbench, hay una casilla para hacer que cada columna de una tabla única, no nula, clave primaria etc.La creación de restricción única en varias columnas en MySQL Workbench diagrama EER

Sin embargo, me gustaría tener una restricción ÚNICA en múltiples columnas. ¿Es posible agregarlo en el diagrama EER de MySQL Workbench?

EDIT: Ok, me di cuenta de la casilla de verificación único, crea un índice UNIQUE, y no una restricción única

Respuesta

84

En el cuadro de diálogo Modificar tabla de MySQL Workbench:

  • Ir a la ficha Índices.
  • Haga doble clic en una fila en blanco para crear un nuevo índice.
  • Elija 'UNIQUE' como el tipo de índice.
  • Verifique las columnas que desea que sean únicas juntas.

Hay un poco de discussion en cuanto a si esto es raro, ya que un índice no es lo mismo que una limitación. Ciertamente no habría pensado mirar allí. Sin embargo, aparentemente el 'índice único' impone la singularidad de la misma manera que una restricción única, y puede mejorar el rendimiento. Por ejemplo, si trato de insertar una fila que se rompería única después de usar este método, arroja un error '1062 Duplicate entry'.

+2

Esta debería ser la respuesta correcta – Quaternion

+0

Perfecto, gracias! – BEm

2

no parece estar disponible: http://bugs.mysql.com/bug.php?id=48468. parece que lo que puede hacer es crear un índice único de varias columnas en la pestaña de índices, pero para una restricción única de varias columnas, debe ejecutar el comando de creación de forma manual.

+0

Gracias por la respuesta, realmente deberían implementarlo. Es bastante problemático cuando tiene varias tablas con restricciones únicas de múltiples columnas. – zhenming

+0

En realidad, si mira hasta el final de ese hilo, dice que el índice único de varias columnas impone las restricciones de singularidad correctamente. – Alex

+1

sí, pero la pregunta es sobre la posibilidad de crear restricciones y no índices desde el banco de trabajo. es posible desde la línea de comandos pero no es posible desde Workbench. –

2

Con la última MWB (estoy en 6.0.8), it is possible to create composite keys

Si desea crear una clave principal compuesta puede seleccionar varias columnas y marque la casilla de verificación PK. Sin embargo, hay un paso adicional que se requiere, debe hacer clic en la pestaña Índices, luego en el panel Columnas de índice debe establecer el orden deseado de las claves principales.

Cuestiones relacionadas