dkfr.net
当前位置:首页 >> orAClE 中怎么大批量的执行UPDATE语句 >>

orAClE 中怎么大批量的执行UPDATE语句

你可以写一个PLSQL命令块通过执行UPDATE命令 begin for i in 1 .. 100000 loop update a set a.1=x where a.2=i if mod(i,5000)=0 then commit; end if; end loop; end; /

建议你搞个form表单,然后填入相应数据再直接一句话全部插入就行了 比如

可以直接更新多字段的,只要你有逻辑就行了 update tablename set yjd='',bn='',qsjd='' where ......

建议你通过某个条件把这150万条记录,分成多个部分,写个存储过程,依次执行,执行完一部分就提交一部分。 这样即即减少了对内存的要求,也防止玩意update出错,还要花费大量的时间在回滚上。

有时我们需要一次性执行多条sql语句,而用来更新的sql是根据实际情况用代码拼出来的 解决方案是把sql拼成下面这种形式: begin update TB_VG set seq = 1, vessel_id = 'Jin14', vessel_type = 'TRACK' where batch_number = '20837' and train_...

update 表名 set 字段1=值1,字段2=值2 ...... 更新时最好加上where条件,不然所有数据都被更新了。

如果是一个表,就是update 表 set 列=值 where 列=条件。。。 如果多表联动,那可以用存储过程或是触发器 问题太笼统,描述详细一些吧

改成如下: begin if :old.ntwriter:new.ntwriter then --加一个条件判断 update daoyu set name=:new.ntwriter where smid=:old.pkid; end if; if :old.nttitle:new.nttitle then --加条件判断 update daoyu set province=:new.nttitle where s...

UPDATE 是肯定达不到你的要求的,update只能修改数据,如果表1和表2的记录数都不同,不管怎么UPDATE都达不到相同的结果

其实二楼写的最简单,但对于新手,最好别那么写,至于1楼,如果数据不是很多,没必要搞个游标。你也可以看看我写的 create or replace procedure P_Update(o_vc_message out varchar2) is type column1 is table of table1.column1%type index b...

网站首页 | 网站地图
All rights reserved Powered by www.dkfr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com