您的位置:首页 > 数据库 > MySQL

MySQL —— FOREING KEY(外键约束)

2017-12-24 11:14 253 查看
一、FOREING KEY(外键约束)的要求

1、保持数据一致性,完整性

2、实现一对一或一对多关系

3、父表和子表必须使用相同的存储引擎,并且禁止使用临时表

4、数据表的存储引擎只能为 InnoDB

5、外键列和参照列必须具有相似的数据类型。其中数字的长度和符号位必须相同,字符的长度可以不同

6、外键列和参照列必须创建索引。如果外键列不存在索引的话,MySQL将自动创建索引

7、语法

FOREING KEY(in_key_name) REFERENCES out_table_name(out_key_name)


二、FOREING KEY(外键约束)的参照操作

1、CASCADE:从父表删除或更新且且自动删除或更新子表中匹配的行

2、SET NULL:从父表删除或更新行,并设置子表中的外键列为 NULL。

(如果使用该选项,必须保证子表列没有指定 NOT NULL)

3、RESTRICT:拒绝对父表的删除或更新操作

4、NO ACTION:标准SQL的关键字,在MySQL中与 RESTRICT 相同
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql