当前位置: 移动技术网 > IT编程>数据库>Oracle > Oracle数据库级联删除、级联更新的实现

Oracle数据库级联删除、级联更新的实现

2018年11月06日  | 移动技术网IT编程  | 我要评论

腾讯电话人工服务,房探007上海,烈日暗影甲胄

oracle 级联删除的实现

代码:

 --设置外键约束(可以通过consteraint给约束命名)
       p_m number(10) references main(m_id) on delete cascade

相关解释:

foreign key 的作用是定义外键约束

regerences的作用是赋予权限

on delete cascade 级联删除,彻底删除相关数据

on delete set null 半级联删除,会将子表中对应的值设为null(前提是外键引用列可以设置为null )

oracle 数据库级联更新

oracle数据库本身不支持外键的级联更新,不过我们可以有其他方法达到级联更新的效果(oracle的延迟约束和非延迟约束)

非延迟约束就是在修改记录的时候会立刻进行约束条件的查看,看是否因为违反了某些约束条件而不能执行修改。延迟约束不会在刚进行修改的时候进行约束查看,只有提交的时候才会检查。oracle的级联更新就是使用这个特性来实现的

步骤分为两步:

第一步更改为延迟约束

第二步设置触发器,当主表的主键更改了,就更新子表的外键

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网