31

Nel diagramma EER di MySQL Workbench, v'è una casella di controllo per rendere ogni colonna in una tabella univoca, non nullo, chiave primaria eccCreazione vincolo univoco più colonne in MySQL Workbench diagramma EER

Tuttavia, desidero avere un vincolo UNIQUE su più colonne. È possibile aggiungerlo nel diagramma EER di MySQL Workbench?

EDIT: Ok, ho capito la casella di controllo unico, crea un indice univoco, e non un vincolo univoco

risposta

84

Nella finestra di Alter tabella di MySQL Workbench:

  • Vai alla scheda Indexes.
  • Fare doppio clic su una riga vuota per creare un nuovo indice.
  • Scegliere 'UNICO' come tipo di indice.
  • Controllare le colonne che si desidera essere univoci insieme.

Ci sono alcune discussion sul fatto che questo è strano, dal momento che l'indice non è la stessa come un vincolo. Di certo non avrei pensato di guardare lì. Tuttavia, apparentemente l '"indice univoco" rafforza l'unicità allo stesso modo di un vincolo univoco e può migliorare le prestazioni. Ad esempio, se provo a inserire una riga che si interrompe univoca dopo aver utilizzato questo metodo, genera un errore "1062 Duplicate entry".

+2

Questa dovrebbe essere la risposta corretta – Quaternion

+0

Perfetto, grazie! – BEm

2

non sembra essere disponibile: http://bugs.mysql.com/bug.php?id=48468. sembra che sia possibile creare un indice univoco a più colonne nella scheda degli indici ma per un vincolo univoco a più colonne, è necessario eseguire manualmente il comando di creazione.

+0

Grazie per la risposta, dovrebbero davvero implementarlo. È piuttosto fastidioso quando si hanno più tabelle con vincoli univoci a più colonne. – zhenming

+0

In realtà, se si guarda fino alla fine di quel thread, si dice che l'indice univoco a più colonne applica correttamente i vincoli di unicità. – Alex

+1

sì, ma la domanda riguarda la possibilità di creare vincoli e non indici da banco di lavoro. è possibile dalla riga di comando ma non è possibile dal workbench. –

2

Con l'ultima MWB (io sono su 6.0.8), it is possible to create composite keys

Se si desidera creare una chiave primaria composta è possibile selezionare più colonne e selezionare la casella di controllo PK. Tuttavia, è necessario un ulteriore passaggio, è necessario fare clic sulla scheda Indicatori, quindi nel pannello Colonne indice è necessario impostare l'ordine desiderato delle chiavi primarie.

Problemi correlati