日期:2014-05-17  浏览次数:20830 次

问个ORACLE JOB问题
由于公司每天需要大量的数据更新
所以全自己手工更新的话会很浪费时间
于是想JOB来实现
求高手们给个思路 更新语句是这样的
update collection c set c.biblio_id=(select b.id from biblio b where b.school_id=1201 and b.bookrecno=c. bookrecno and rownum=1) where exists
(select 1 from biblio b where b.school_id=1201 and b.bookrecno=c. bookrecno) and c.school_id=1201 and c.id >=2214885 and c.id<=2215885
我想每天晚上12点能更新这段数据
但是c.id >=2214885 and c.id<=2215885这段是会变的
------最佳解决方案--------------------
怎么个变法,不说怎么变,这个JOB就没办法做
------其他解决方案--------------------
把需求说的再具体一些
------其他解决方案--------------------
你可以把这段代码写进存储过程里,这个“c.id >=2214885 and c.id<=2215885”会变的值用参数传进来,然后用job调用这个存储过程 
------其他解决方案--------------------
封装成存储过程,JOB定时执行就是了,有什么问题?