易截截图软件、单文件、免安装、纯绿色、仅160KB

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

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

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

该order表中的客户订单很多,怎样能让oracle检测在address和tell为null的情况下,自动从该客户的其他订单找到该客户的信息来修改丢失的address,tel信息。

update Order set address=(select max(address) from Order a where a.customerid=Order.customerid) where address is null

相同的写法,修改tel

LS的,在pl/sql developer或toad中手动执行是可以的,但怎样能让oracle自动实现修改呢?

这肯定得写个job去扫描...
具体请参照
http://topic.csdn.net/u/20100222/15/7c16a404-bfee-4730-9c72-a7d45bd851b4.html?39117

我以前也遇到过类似问题。。后来就是用job搞定的。。。

利用触发器


.

用job吧。。其实这个也有问题,如果有的同一个客户address和tell有好几个版本。。那就不知道该找哪个了

我觉得得用定时器,同一个表无法用触发器来实现自动更新的,触发器只能出发其他表,不能出发自己


相关问答:

Oracle离线访问---求助 - Oracle / 基础和管理

大家好,我现在把oracle服务器上面的原始文件,下载到本机了.我想在本机访问数据库怎么设置啊.是不是类似可以建立一个什么虚拟服务器来实现.请大家出出主意
引用
    大家好,我现在把oracle服务器上面 ......

Oracle 数据导出问题 - Oracle / 高级技术

exp user/password@dbname file=c:\table.dmp tables=jbitaku,jbitakum grants=y
然後按回車鍵 說明:  user/password@dbname  分別表示用戶名,密碼和服務名 f ......

oracle spatial空间函数出错 - Oracle / 高级技术

在执行包的时候引用oracle spatial空间函数出错,出错情况如下
Errors in file
/user/oracle/app/oracle/admin/grid/udump/grid1_ora_143768.trc: ORA-29902:
error in executing ODCIIndexStart() routine ORA-0 ......

请教Oracle事务隔离级别问题 - Oracle / 非技术区

查看事务隔离级别的命令,
MySQL使用的是select @@tx_isolation;
在Oracle中查看事务隔离级别的命令是哪个?

SQL code:

SELECT /*+ rule */ s.username,decode(l.type,'TM','TABLE LOCK','TX','ROW LOCK', ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号