|
利用SqlBulkCopy可批量插入数据
string connectString = string.Empty; DataTable dt = new DataTable(); using (SqlConnection conn = new SqlConnection(mDbOperator.mConStr)) { using (SqlBulkCopy bulkCopy = new SqlBulkCopy(conn)) { bulkCopy.DestinationTableName = "tableName";//目标表名 // 返回 SqlBulkCopyColumnMapping 项的集合。 列映射定义数据源中的列和目标中的列之间的关系。 string SourceColumn = string.Empty;//正在数据源中映射的列的名称。 string DestinationColumn = string.Empty;//正在目标数据库表中映射的列的名称。 bulkCopy.ColumnMappings.Add(SourceColumn, DestinationColumn); bulkCopy.BatchSize = 100000;//每一批次中的行数。 在每一批次结束时,将该批次中的行发送到服务器。 bulkCopy.WriteToServer(dt);//将所提供的 DataTable 中的所有行复制到 DestinationTableName 对象的 SqlBulkCopy 属性指定的目标表中。 } }
详细请访问官网:https://docs.microsoft.com/zh-cn/dotnet/api/system.data.sqlclient.sqlbulkcopy?view=netframework-4.8
即使爬到最高的山上,一次也只能脚踏实地地迈一步。 |