ORACLE有没有级联修改功能?

戴纹 2003-12-09 09:07:09
等效于SQL Server中 ON DELETE CASCADE ON UPDATE CASCADE 的级联删除、级联修改怎么实现啊?
我只找到级联删除,级联修改能否实现?是如何实现的?
...全文
107 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
smallcrocodile 2003-12-09
  • 打赏
  • 举报
回复
没有
tcmis 2003-12-09
  • 打赏
  • 举报
回复
建立如下触发器

create or replace trigger updata_primary_table
after update on primary_table
for each row
declare

begin
update foreign_table set xh=:new.xh where xh = :old.xh;
end updata_primary_table;
戴纹 2003-12-09
  • 打赏
  • 举报
回复
另:如果建立了Foreign Key 关系后,如果想建立类似级联修改功能,是在 BEFORE UPDATE 还是在AFTER UPDATE后执行?
我在考虑,2者不行的,因为有外键关系约束啊
戴纹 2003-12-09
  • 打赏
  • 举报
回复
级联删除是可以在创建表的时候建立的,但级联修改不能啊:(
是不是只能用触发器来实现啊?
可否给小弟个建立触发器的例子
tcmis 2003-12-09
  • 打赏
  • 举报
回复
还有一种方法就是在建表的时候将级连的关系建上.
example:
create table primary_table(
xh number(4),
mc varchar2(30),
constraint pk_primary_table primary key(xh));

create table foreign_table(
xh number(4),
bh number(4),
xmmc varchar2(30),
constraint pk_foreign_table primary key(xh,bh),
constraint fk_primary_table foreign key(xh) references primary_table (xh) on delete cascade);

呵呵,还有就是按照楼上的,用触发器
lianhg 2003-12-09
  • 打赏
  • 举报
回复
可以使用 触发器
戴纹 2003-12-09
  • 打赏
  • 举报
回复
DGDJ们,SAVE ME!
如果要分数,我++++
戴纹 2003-12-09
  • 打赏
  • 举报
回复
对不起,在哪里可以修改“问题点数”或增加点数的?
遇到分数是红色的不能结帖啊?
戴纹 2003-12-09
  • 打赏
  • 举报
回复
谢谢各位,搞定了:)

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧