0

我有一个将数百万条记录插入表的过程。

当它被执行时,没有其他进程可以访问该表。他们必须等待几分钟。对于网络应用程序是不可接受的。

那么,是否可以在两个 sql 表之间使用像 BULK INSERT 这样的东西?

谢谢 !

4

1 回答 1

3

那么,是否可以在两个 sql 表之间使用像 BULK INSERT 这样的东西?

是的……它被称为BULK INSERT但它是从一个表到另一个表的两步过程:

在本地保存数据:

execute xp_cmdshell 'bcp Northwind.dbo.Orders out c:\temp\Orders.txt -Sgalser01 -T -n'

然后批量插入保存的文件:

select * into Northwind.dbo.Orders2 from Northwind.dbo.Orders where 1=2
bulk insert Northwind.dbo.Orders2 from 'c:\temp\Orders.txt' 
     with (DATAFILETYPE  = 'native')
于 2012-06-28T00:53:12.873 回答