DataSet里面都是很多个DataTable,DataTable可以用SqlBulkCopy来批量提交,性能极高。可以一次性提交构建好的DataTable表。
using(SqlBulkCopy sqlBC = new SqlBulkCopy("数据库连接字符串"))
{
//设定目标列表
sqlBC.DestinationTableName = "T_TableName";
//设定本地列-->目标列的一一对应关系
//目标表中第0列一般为自动增长的ID,因此本地的0通常与数据库中的第1列对应
sqlBC.ColumnMappings.Add(0,1);
sqlBC.ColumnMappings.Add(1, 2);
sqlBC.ColumnMappings.Add(2, 3);
sqlBC.ColumnMappings.Add(3, 4);
sqlBC.ColumnMappings.Add(4, 5);
//批量提交
sqlBC.WriteToServer(dt);
}