首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在添加外键时,约束关键字的用法是什么?

问在添加外键时,约束关键字的用法是什么?
EN

Stack Overflow用户
提问于 2016-06-29 08:29:20
回答 2查看 2.6K关注 0票数 8

我不知道这两者有什么区别。

代码语言:javascript
复制
CONSTRAINT fk_PerOrders FOREIGN KEY (P_Id) REFERENCES ..

和

代码语言:javascript
复制
FOREIGN KEY (P_Id) REFERENCES ..

只是点名还是别的什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-06-29 08:39:49

作为关于MySQL的外键指示手册,约束语法的CONSTRAINT symbol_name部分是可选的:

代码语言:javascript
复制
[CONSTRAINT [symbol]] FOREIGN KEY
[index_name] (index_col_name, ...)
REFERENCES tbl_name (index_col_name,...)
[ON DELETE reference_option]
[ON UPDATE reference_option]

reference_option:
    RESTRICT | CASCADE | SET NULL | NO ACTION

不同之处在于外键的命名。如上述链接文件所述:

否则,MySQL将隐式创建一个外键索引,该索引根据以下规则命名: 如果定义了约束符号值,则使用约束符号值。否则,将使用外键index_name值。 ·如果没有定义约束符号或外键index_name,则使用引用外键列的名称生成外键索引名。

票数 6
EN

Stack Overflow用户

发布于 2016-06-29 08:40:31

使用CONSTRAINT子句,您可以为外键约束定义约束名。如果缺少,MySQL将自动生成一个名称。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38094222

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档