我需要从ac#application执行一个非常大的sql server插件.在20,000到50,000记录范围内的某个地方.
通过SQL Server执行插入的最快方法是什么?
我知道有几个选项,但我不知道哪个是最快的.
insert into MyTable(column1, column2, ..., column*)
select 'value','value',...,'value'
union
select 'value','value',...,'value'
Run Code Online (Sandbox Code Playgroud)
要么
insert into MyTable(column1, column2, ..., column*)
exec('select ''value'',''value'',...,''value'''
'select ''value'',''value'',...,''value''')
Run Code Online (Sandbox Code Playgroud)
要么
bulk insert from a data file
Run Code Online (Sandbox Code Playgroud)
要么
Any better way that you know of :)
Run Code Online (Sandbox Code Playgroud)
从C#开始,你可以使用SqlBulkCopy,但对于整体的原始速度,我希望你可以通过bcp获得更快的速度,你可以真正调整SSIS.在这两种情况下,您都可以有效地使用外部可执行文件--bcp或dtexec.
| 归档时间: |
|
| 查看次数: |
294 次 |
| 最近记录: |