kewenfeng 发表于 2008-04-20 00:02

请教批量更新SQL语句的写法,急问

现在有一个表TB1(FD1,FD2,FD3),以前我都是直接更新的。
update TB1 set FD1 = 0;

但是由于该表是百万级表,很多进程都要修改他,这样子直接update,可能会造成锁表,进而引发其他进程访问失败。

后来改为游标的方式,一行一行的更新,但是效率实在是不可恭维。

有谁知道如何实现5千行5千行地更新呢?
如update TB1 set FD1 = 0 where 从第1行到5000行
update TB1 set FD1 = 0 where 从第5000行到10000行
update TB1 set FD1 = 0 where 从第10000行到15000行
......
update TB1 set FD1 = 0 where 从第1995000行到2000000行

MicroHard 发表于 2008-04-20 01:07

用rowid
页: [1]
查看完整版本: 请教批量更新SQL语句的写法,急问