/// <summary> /// 批量插入 注:DT的tableName为要更新的数据库表名,DT的列名和数据库一致 /// </summary> /// <param name="dt"></param> /// <remarks></remarks> public void tsSqlBulkCopy(DataTable dt) { try { using (SqlBulkCopy sqlCopy = new SqlBulkCopy(this.connection, SqlBulkCopyOptions.FireTriggers, this.transaction)) { string sql = "select * from " + dt.TableName + " where 1=-1"; DataTable DBTable = ExecuteDataTable(sql); List<string> DBList = new List<string>(); for (int i = 0; i <= DBTable.Columns.Count - 1; i++) { DBList.Add(DBTable.Columns[i].ColumnName); } List<string> ParList = new List<string>(); for (int i = 0; i <= dt.Columns.Count - 1; i++) { ParList.Add(dt.Columns[i].ColumnName); } //添加对应列 foreach (string item in DBList) { if (ParList.Contains(item)) { sqlCopy.ColumnMappings.Add(item, item); } } sqlCopy.DestinationTableName = dt.TableName; sqlCopy.BatchSize = dt.Rows.Count; sqlCopy.WriteToServer(dt); } } catch (Exception ex) { throw ex; } }
SqlBulkCopy 批量插入数据库
免责声明:文章转载自《SqlBulkCopy 批量插入数据库》仅用于学习参考。如对内容有疑问,请及时联系本站处理。
上篇ansible批量修改linux服务器密码的playbook简写artTemplate模板一二下篇
宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=