在MySQL Workbench EER图中为多列创建UNIQUE约束

时间:2012-07-07 15:48:34

标签: mysql mysql-workbench unique-constraint multiple-columns workbench

在MySQL Workbench的EER图中,有一个复选框可以使表中的每列唯一,而不是空,主键等。

但是,我想在多列上有一个UNIQUE约束。是否可以在MySQL Workbench的EER图中添加它?

编辑:好的,我意识到了唯一的复选框,创建了一个独特的索引,而不是一个独特的约束

3 个答案:

答案 0 :(得分:102)

在MySQL Workbench的Alter Table对话框中:

  • 转到“索引”标签。
  • 双击空白行以创建新索引。
  • 选择“UNIQUE”作为索引类型。
  • 检查您想要一起唯一的列。

关于这是否奇怪,有一些discussion,因为索引与约束不同。我当然不会想到那里。然而,显然“唯一索引”以与唯一约束相同的方式强制实现唯一性,并且可以提高性能。例如,如果我尝试在使用此方法后插入一个会破坏唯一的行,则会抛出“1062重复条目”错误。

答案 1 :(得分:2)

它似乎不可用:http://bugs.mysql.com/bug.php?id=48468。您似乎可以在索引选项卡上创建多列唯一索引,但对于多列唯一约束,您需要手动运行创建命令。

答案 2 :(得分:2)

使用最新的MWB(我在6.0.8上),it is possible to create composite keys

  

如果要创建复合主键,可以选择多个列并选中PK复选框。但是,还有一个必需的步骤,您必须单击“索引”选项卡,然后在“索引列”面板中必须设置主键的所需顺序。