2011-05-10 73 views
3

当我在MySQL工作台中创建一个外键时,一个新条目出现在“索引”选项卡上,与我刚刚创建的外键完全相同。MySQL Workbench会自动为外键创建索引吗?

这实际上是外键,出于某种原因出现在“索引”选项卡上?或者MySQL Workbench试图为我提供帮助并为我创建一个索引,知道我可能正在根据该列进行选择,并将它(与其混淆)与外键相同?

回答

6

这是MySQL做的,而不是工作台。
是的,在创建外键约束时创建索引会很有帮助。

1

innodb中的外键需要索引或索引的前缀,其索引或字段与约束具有相同的顺序。看起来MySQL Workbench会自动创建它们,因为它们出现在从MySQL Workbench导出的SQL脚本中。 这很有帮助,但问题是它无法识别其他索引的前缀,因此即使在不必要时它也会始终创建索引。