SqlBulkCopy无法在服务器上插入所有记录

时间:2019-08-15 16:45:53

标签: c# sql-server bulkinsert sqlbulkcopy

我正在使用SqlBulkCopy将具有大量数据的Excel文件上传到SQL Server。该代码可以在本地计算机上完美运行,但是在服务器上,它并没有像应有的那样拉所有记录。

这是我的web.config(使用IMEX = 1)

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0;HDR=YES;IMEX=1;'"/>

我正在使用BulkCopyTimeout和批处理大小。下面是我的代码示例

sqlBulkCopy.ColumnMappings.Add("PLANT", "PLANT");
sqlBulkCopy.ColumnMappings.Add("SHRPCMINMAX", "SHRPCMINMAX");

sqlBulkCopy.BulkCopyTimeout = 0;
sqlBulkCopy.BatchSize = 10000;

con.Open();
sqlBulkCopy.WriteToServer(dt);
con.Close();

我无法弄清楚为什么它不提取服务器上的所有记录,因为它在本地工作得很好。

1 个答案:

答案 0 :(得分:0)

在将数据表发送到BCP进程之前,请先对其进行检查。确保它包含所有内容。代码看起来还可以,所以唯一让我惊讶的是数据。