外键约束延伸-ON语句
文章目录
-
外键约束对子表的含义: 如果在父表中找不到候选键,则不允许对子表进行insert/update
-
外键约束对父表的含义: 在父表上进行update/delete操作室,在子表中有一条或多条对应匹配行的候选键时,无法修改,仅当在子表定义外键时指定on update /on delete子句
外级联删除
思考一个问题:假如部门经理John被其他公司挖走,John平时对自己的下属非常好,下属愿意和他一起走,也就是说,John离职会将自己的团队一并带走,在数据表操作上有没有好的方法一次性解决这个问题?
外级联删除:如果父表中的记录被删除,则子表中对应的记录自动被删除;(cascade方式, 在父表update / delete时,同步update / delete掉子表中匹配的记录)
foreign key (managerid) references dpmanager(id) on delete cascade
- 新建部门员工表staff3
create table staff3 (
id tinyint(4) primary key auto_increment,
name varchar(20) not null,
regular enum('yes','no') default 'no',
managerid tinyint(4)