在 c# 中运行 sqlbulkcopy 时出现错误:WriteToServer: Connection property has not been initialized。
它发生在 WriteToServer 命令中。连接已打开。
using (SqlBulkCopy s = new SqlBulkCopy(conn))
{
foreach (DataTable dt in ds.Tables)
{
s.DestinationTableName = "tmp_" + dt.TableName;
s.NotifyAfter = 5000;
s.SqlRowsCopied += new SqlRowsCopiedEventHandler(s_SqlRowsCopied);
s.WriteToServer(dt);
s.Close();
}
}
正确代码:
using (SqlBulkCopy s = new SqlBulkCopy(conn))
{
foreach (DataTable dt in ds.Tables)
{
s.DestinationTableName = "tmp_" + dt.TableName;
s.NotifyAfter = 5000;
s.SqlRowsCopied += new SqlRowsCopiedEventHandler(s_SqlRowsCopied);
s.WriteToServer(dt);
}
s.Close();
}