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

怎么一次性插入或更新多行数据

2012-03-20 
如何一次性插入或更新多行数据程序是基于C/S模型的 里面有个功能需要插入或更新连续60行记录,比如ID100-16

如何一次性插入或更新多行数据
程序是基于C/S模型的 里面有个功能需要插入或更新连续60行记录,比如ID100-160,由于数据库在服务器上,如果简单的进行循环插入或更新,会延迟非常厉害,不知道有没办法避免

[解决办法]
拼接插入或更新语句,一次性传到服务器执行.
[解决办法]
还可以从服务器获取一个空的recordset,用recordset.add方法添加记录,然后用 update 方法执行.
[解决办法]
你在程序里将插入或更新的SQL字符串循环拼接后,然后连接数据库直接一次性执行。
[解决办法]
可以些存储过程拼接字符串 然后在程序中调用。
[解决办法]
60行就延迟得厉害了
[解决办法]
先在数据集中修改,比如我做过C#的,在DataSet中先进行操作.然后一次性更新到数据库
[解决办法]
update tableA set tableA.xx=xx,.....
where id between xx and xx
[解决办法]

探讨
语句拼接和用记录集一次性操作 哪一种效率更高

[解决办法]
1、从SqlServer考虑,可以用BCP命令,批量导入数据,但BCP只能在本地执行!
SQL code
EXEC master..xp_cmdshell 'BCP PMS.dbo.table1 in c:\table1.txt -c -t";" -r"\n\r" -S"Fred" '  EXEC master..xp_cmdshell  'bcp "testdb.dbo.test" out "C:\123.txt" -c -q -U"sa" -P"sa"'EXEC   master..xp_cmdshell   'bcp   testdb.dbo.test in  "c:\test1.txt" -F 2  -c   -t";"  -r"\n" -k  -U"sa" -P"sa" 'EXEC master..xp_cmdshell 'BCP AdventureWorks.sales.currency format nul -f c:\currency_format1.fmt -c -T'
[解决办法]
探讨

语句拼接和用记录集一次性操作 哪一种效率更高

热点排行