约束-外键约束-级联操作
数据表
department
employe
如果我们想要将 department里的id进行改变 不可以直接改id 因为我们已经创建外键约束 是不可以删除的
比如
错误:不能删除或更新父行:外键约束失败(' videoppractice ')。' employee ', CONSTRAINT 'depid_fk' FOREIGN KEY ('dep_id') REFERENCES 'department' (id'))
我们只能使用sql语句进行更改
-- 将employe表的dep_id为1的都是null UPDATE employe SET dep_id=NULL WHERE dep_id=1; -- 将department表的id为1的数据改为id为5 UPDATE department SET id=5 WHERE id=1; -- 将employe表的id为空的数据改为5 UPDATE employe SET dep_id=5 MHERE dep_id IS NULL;
我们可以使用 创建外键 设置级联更新
删除外键
添加外键 设置级联更新
SQL语句
ALTER TABLE 数据表名 ADD CONSTRAINT 外键名 FOREIGN KEY (主键字段) REFERENCES 外键表(外键字段) ON UPDATE CASCADE;
运行结果
测试
数据表
department
employe
分类:
级联更新:ON UPDATE CASCADE
级联删除:ON DELETE CASCADE