Oracle 能否实现自动修改数据?

tongshushan 2010-02-23 10:46:39
Order 表示 客户(customer)购买不同的产品(product),并且预留客户的联系信息。有时候客户的一些订单的联系信息丢失了,例如:
Order:

customerid productid address tel
c1 p1 addres1 11111111
c1 p2 null null

该order表中的客户订单很多,怎样能让oracle检测在address和tell为null的情况下,自动从该客户的其他订单找到该客户的信息来修改丢失的address,tel信息。
...全文
144 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyfilicity 2010-02-24
  • 打赏
  • 举报
回复
我觉得得用定时器,同一个表无法用触发器来实现自动更新的,触发器只能出发其他表,不能出发自己
YY_MM_DD 2010-02-23
  • 打赏
  • 举报
回复
这肯定得写个job去扫描...
具体请参照
http://topic.csdn.net/u/20100222/15/7c16a404-bfee-4730-9c72-a7d45bd851b4.html?39117
tongshushan 2010-02-23
  • 打赏
  • 举报
回复
LS的,在pl/sql developer或toad中手动执行是可以的,但怎样能让oracle自动实现修改呢?
qiyousyc 2010-02-23
  • 打赏
  • 举报
回复
update Order set address=(select max(address) from Order a where a.customerid=Order.customerid) where address is null

相同的写法,修改tel
huangdh12 2010-02-23
  • 打赏
  • 举报
回复
用job吧。。其实这个也有问题,如果有的同一个客户address和tell有好几个版本。。那就不知道该找哪个了
ACMAIN_CHM 2010-02-23
  • 打赏
  • 举报
回复
利用触发器





.
talent_kk 2010-02-23
  • 打赏
  • 举报
回复
我以前也遇到过类似问题。。后来就是用job搞定的。。。

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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