MySQL —— FOREING KEY(外键约束)
2017-12-24 11:14
253 查看
一、FOREING KEY(外键约束)的要求
1、保持数据一致性,完整性
2、实现一对一或一对多关系
3、父表和子表必须使用相同的存储引擎,并且禁止使用临时表
4、数据表的存储引擎只能为 InnoDB
5、外键列和参照列必须具有相似的数据类型。其中数字的长度和符号位必须相同,字符的长度可以不同
6、外键列和参照列必须创建索引。如果外键列不存在索引的话,MySQL将自动创建索引
7、语法
二、FOREING KEY(外键约束)的参照操作
1、CASCADE:从父表删除或更新且且自动删除或更新子表中匹配的行
2、SET NULL:从父表删除或更新行,并设置子表中的外键列为 NULL。
(如果使用该选项,必须保证子表列没有指定 NOT NULL)
3、RESTRICT:拒绝对父表的删除或更新操作
4、NO ACTION:标准SQL的关键字,在MySQL中与 RESTRICT 相同
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外键约束
- MySql――外键约束
- MySQL主键、外键以及子表的删除、更新约束
- MYSQL外键约束的参照操作
- MySQL约束:非空约束、主键约束、唯一约束、默认约束、外键约束
- 怎么删除有外键约束的MySQL表中的数据
- mysql无法添加外键约束(cannot add foreign key constraint)
- mysql外键约束详解
- MySQL之外键约束
- mysql表相关的约束,主键外键。
- python--MySql(外键约束、多表查询(*****))
- mysql外键约束的两种方法
- mysql启动和关闭外键约束的方法
- MySQL学习笔记(9)之外键约束
- 如果你发现mysql的外键约束不管用了
- MySQL外键约束
- MySql之DDL操作创建表(添加主键, 外键约束以及基本的数据类型)
- Mysql设置外键约束失效
- mysql外键约束
- mysql外键约束