目录
7、FOREIGN KEY(外键) 约束
7.1 作用
7.2 关键字
FOREIGN KEY
7.3 主表和从表/父表和子表
7.4 特点
7.5 在CREATE TABLE时添加
7.6 演示外键效果
主表中没有10号部门,因此添加失败;
由于关联问题,删除、更新要先对从表进行。
7.7 在ALTER TABLE时添加外键约束
7.8 总结:
7.9 约束等级
演示:
创建父子表:
加入数据
更新删除父表数据
查询子表对应部门:
可见,在SET NULL约束等级下,父表的数据先被更新、删除,会把子表上的数据置为NULL
结论:对于外键约束,最好采用:ON UPDATE CASCADE ON DELETE SET NULL方式(也就是上述的SET NULL 约束等级)
7.10 删除外键约束
举例:
注意:删除的时候要使用外键约束名
7.11 开发场景
7.12 阿里开发规范
8、 CHECK(检查)约束
8.1 作用
检查某个字段的值是否符号xx要求,一般指的是值的范围
8.2 关键字
CHECK
8.3 说明
8.4 CHECK约束的使用
9、DEFAULT约束
9.1 作用
给某个字段/某列指定默认值,一旦设置默认值,在插入数据时,如果此字段没有显式赋值,则赋值为默认值
9.2 关键字
DEFAULT
9.3 在CREATE TABLE时添加约束
9.4 在ALTER TABLE添加约束
9.5 在ALTER TABLE删除约束
10、面试