首页 新闻 会员 周边

多线程更新数据表问题...

0
悬赏园豆:50 [已关闭问题]

某数据库表里面还有10w 条数据,我想用一个多线程,更新这个表,例如创建5个线程...分配给这些线程任务是

thread1 读取0-10 条数据

thread2 读取11-20 条数据

thread3 读取21-30 条数据

thread4 读取31-40 条数据

thread5 读取41-50 条数据

总之就是更新过的就不在检测了,几个线程同时,针对这个表进行更新操作.....

哪位大侠....狂给分...还可再加分...

 

Jared.Nie的主页 Jared.Nie | 小虾三级 | 园豆:1940
提问于:2009-10-15 00:41
< >
分享
其他回答(1)
0

就是防脏写吧,防脏写的终极办法就是

update [table]

set [field1]= @field1new ,[field2]= @field2new................

where  [field1]= @field1old and [field2]= @field2old................

确保你要更新的数据和你取出的数据一致

这样就ok了

小眼睛老鼠 | 园豆:2731 (老鸟四级) | 2009-10-15 09:12
0

方法一:多线程去读数据的时候 处理,oracle 里的 skip for lock  (好像是这个,有点忘了)

方法二:先读出所有数据(或部分数据)到dataset或什么中, 在用多线程处理读出的数据

mythzz | 园豆:2 (初学一级) | 2009-10-15 13:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册