高分求助! 一个关于主表和子表同时更新的sql文的写法!谢谢

Iris 2005-11-14 01:30:30
table t1: (x varchar2(10) primary key);
table t2: (y varchar2(10) references t1(x));
表中有若干条记录,
我现在想执行一个update操作,update t1 set x = substr(x,1,9)
就是说将t1中的字段x的第十位砍掉(取前九位)。
但是由于x是表t2的外键,所以t2的y字段也要随着更新,
这个sql文应该怎么写呢。
谢谢!
...全文
198 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
pastime_Wang 2005-11-15
  • 打赏
  • 举报
回复
主子表外键关联时,也可以使用事务更新记录,先删除表(先子表后主表),在新增!
xjqqxjqq 2005-11-14
  • 打赏
  • 举报
回复
同意楼上的,先DISABLE 外键,更新完再ENABLE
waterfirer 2005-11-14
  • 打赏
  • 举报
回复
ALTER TABLE t2
DISABLE
CONSTRAINT "yourforeignkey"

update t1 set x = substr(x,1,9)

update t2 set y = substr(y,1,9)

ALTER TABLE t2
ENABLE
CONSTRAINT "yourforeignkey"
ATGC 2005-11-14
  • 打赏
  • 举报
回复
级联更新好像不行吧

17,086

社区成员

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

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