外键的“约束符号”和“index_name”之间的区别

时间:2012-11-05 09:58:30

标签: mysql foreign-keys constraints definition

在Alter Table命令中添加外键的MySQL语法如下:

ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...)

CONSTRAINT symbolindex_name之间有什么区别。从我可以看出,它们都是命名外键的方法,但我认为必须有更多的差异,有人可以启发我吗?

1 个答案:

答案 0 :(得分:4)

[symbol] 是一个约束名称,如果指定,MySQL将创建名为 [symbol] 的外键和索引;在这种情况下, [index_name] 将被忽略。

第二个 [index_name] 是索引名称。此索引是自动创建的。如果省略 [symbol] ,则外键将由服务器命名,索引将命名为 [index_name]