【问题标题】:Difference between `Constraint Symbol` and `index_name` for Foreign Keys外键的`约束符号`和`index_name`之间的区别
【发布时间】:2012-11-05 09:58:29
【问题描述】:

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

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

CONSTRAINT symbolindex_name 有什么区别。据我所知,它们都是命名外键的方法,但我认为肯定有更多的区别,谁能启发我?

【问题讨论】:

    标签: mysql foreign-keys constraints definition


    【解决方案1】:

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

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

    【讨论】:

    • 所以它们基本上是一样的?如果是,那么应该使用哪一个?
    • 我使用CONSTRAINT [symbol],它命名外键及其索引。
    猜你喜欢
    • 1970-01-01
    • 2022-10-18
    • 2010-09-23
    • 1970-01-01
    • 2016-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多