我知道关于这个问题的文章更多,但是我的问题是一种特殊情况-我认为-
我有一个数据集,其中填充了由OleDataAdapter命名为“ Categories”的数据表。 在从本地PC上的数据库中填充“类别”表后,我对其进行了巨大的编辑(添加行-可能是数千行-并更新字段)。
现在,我想将所有这些编辑更新到PC上的数据库表。 如何尽快做到这一点?
答案 0 :(得分:0)
尝试SqlBulkCopy
快速样本:
DataTable dt = new DataTable();
foreach (var itm in sampleList) {
DataRow row = dt.NewRow();
row["Field1"] = itm.Field1;
row["Field2"] = itm.Field2;
row["Field3"] = itm.Field3;
dt.Rows.Add(row);
}
using (SqlConnection cn = new SqlConnection(connectionString)) {
cn.Open();
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(cn)) {
bulkCopy.DestinationTableName = "dbo.Categories";
bulkCopy.WriteToServer(dt);
}
cn.Close();
}