首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

关于ADO 批量更新的一个有关问题

2013-06-26 
关于ADO 批量更新的一个问题最近用SQL SERVER 05 做一个东西,客服端有很多东西要更新到服务器端数据库,我

关于ADO 批量更新的一个问题
最近用SQL SERVER 05 做一个东西,客服端有很多东西要更新到服务器端数据库,我用了如下的语句来进行更新
UPDATE table SET xxx=%f WHERE xxx ='%s',发现更新速度超慢,10W条数据就要N久,考虑使用ADO的一个UPDATEBATCH ,但是纳闷了,这个该怎么弄呢?因为我毕竟一条记录对应一个更新值


[解决办法]

引用:
最近用SQL SERVER 05 做一个东西,客服端有很多东西要更新到服务器端数据库,我用了如下的语句来进行更新
UPDATE table SET xxx=%f WHERE xxx ='%s',发现更新速度超慢,10W条数据就要N久,考虑使用ADO的一个UPDATEBATCH ,但是纳闷了,这个该怎么弄呢?因为我毕竟一条记录对应一个更新值


           ……


按说应该不会太慢的。 lz把这个update 语句的执行计划发上来看看。 (ctrl+L 执行一下)
可以考虑建立索引。不过如果lz的更新特别频繁的话,那就是另外一个话题了。

[解决办法]
这写法是用不到索引的.会造成表扫描.(最有可能的都是索引扫描了.)
10W的东西你可以分批更新.或者考虑读取后处理了再UPDATE  主键关联

比如SELECT A,B='%F' INTO # FROM TB WHERE B LIKE '%S'

热点排行
Bad Request.