我有一个DataTable存储在内存中,需要直接将其转储到SQL Server临时表中。
在数据被插入后,我会对其进行一些转换,然后将其中的一部分记录插入永久表中。
这个操作最耗时的部分是将数据导入临时表中。
现在,我必须使用临时表,因为此应用程序的多个副本正在同时运行,并且在实际插入永久表之前,我需要一个隔离层。
从C# DataTable批量插入SQL临时表的最快方法是什么?
由于我正在对内存中的数据进行转换,因此不能使用任何第三方工具。
我的当前方法是创建一个参数化的SqlCommand:
INSERT INTO #table (col1, col2, ... col200) VALUES (@col1, @col2, ... @col200)
然后,对于每一行,清除并设置参数,然后执行。
必须有一种更有效率的方法。我能够在几秒钟内读写磁盘上的记录...