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信息。
...全文
123 7 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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搞定的。。。
相关推荐
发帖
Oracle 高级技术

3472

社区成员

Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
帖子事件
创建了帖子
2010-02-23 10:46
社区公告
暂无公告