oracle批量更新问题,表结构如下:

software攻城师 2013-05-17 03:32:40
程序中遍历更新update用的多 数据库中没用过 哎
A表 id outno inno state
1 111 5
2 111
3 222 5
4 222
......
B表 id AID(A表ID)
11 1
22 3
......
把B表以前引用的是A表中state为5的ID 更新为A表inno=outno 取inno当前ID

我现在有个想法但是不知道怎么在oracle中编写

首先把所有需要更新的数据查询出来
如:
select sepd.ID,benout.id,benin.id from A benout, A benin, B sepd
where benout.outno= benin.inno
and sepd.aid= benout.id
and benout.state = 5
通过这个结果集 将B表中的 id为sepd.ID的Aid修改为benin.id

有个想法是遍历这个执行update 代码不知如何下手 游标有没实际用过
...全文
67 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
software攻城师 2013-05-17
  • 打赏
  • 举报
回复
好吧 用游标解决了
software攻城师 2013-05-17
  • 打赏
  • 举报
回复
update b set b.aid=benin.id where b.aid=benout.id

17,086

社区成员

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

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