ADO.NET-插入多条记录(用SqlBulkCopy类)
来源:互联网 发布:电影英语台词软件 编辑:程序博客网 时间:2024/06/05 05:34
/// <summary>
/// 批量复制
/// </summary>
/// <param name="connectionString">目标表的数据库连接字符串</param>
/// <param name="sourceTable">原表</param>
/// <param name="destinationTable">目标表名</param>
public static void ExecuteBulkCopy(string connectionString, DataTable sourceTable, string destinationTable)
{
using (SqlConnection sqlconn = new SqlConnection(connectionString))
{
sqlconn.Open();
using (SqlBulkCopy sbc = new SqlBulkCopy(sqlconn))
{
sbc.BatchSize = 1000;
sbc.BulkCopyTimeout = 180;
//将DataTable表名作为待导入库中的目标表名
sbc.DestinationTableName = destinationTable;
//将数据集合和目标服务器库表中的字段对应
for (int i = 0; i < sourceTable.Columns.Count; i++)
{
//列映射定义数据源中的列和目标表中的列之间的关系
sbc.ColumnMappings.Add(sourceTable.Columns[i].ColumnName, sourceTable.Columns[i].ColumnName);
}
sbc.WriteToServer(sourceTable);
}
sqlconn.Close();
}
}
/// <summary>
/// 批量复制
/// </summary>
/// <param name="trans">事务</param>
/// <param name="sourceTable">数据源</param>
/// <param name="destinationTable">目标表名</param>
public static void ExecuteBulkCopy(SqlTransaction trans, DataTable sourceTable, string destinationTable)
{
using (SqlBulkCopy sbc = new SqlBulkCopy(trans.Connection, SqlBulkCopyOptions.KeepIdentity, trans))
{
sbc.BatchSize = 1000;
sbc.BulkCopyTimeout = 180;
//将DataTable表名作为待导入库中的目标表名
sbc.DestinationTableName = destinationTable;
//将数据集合和目标服务器库表中的字段对应
for (int i = 0; i < sourceTable.Columns.Count; i++)
{
//列映射定义数据源中的列和目标表中的列之间的关系
sbc.ColumnMappings.Add(sourceTable.Columns[i].ColumnName, sourceTable.Columns[i].ColumnName);
}
sbc.WriteToServer(sourceTable);
}
}
- ADO.NET-插入多条记录(用SqlBulkCopy类)
- ADO.Net实现批量插入数据库(SqlBulkCopy处理)
- ADO操控数据库SqlBulkCopy批量数据插入
- 海量数据插入数据库效率对比测试 ---ADO.NET下SqlBulkCopy()对比LINQ 下InsertAllOnSubmit()
- ADO.NET 新特性之SqlBulkCopy
- 用.NET SqlBulkCopy类执行批量复制
- 用.NET SqlBulkCopy类执行批量复制
- 一次插入多条记录
- 一次插入多条记录
- 一次性插入多条记录
- mysql插入多条记录
- SQL 插入多条记录
- MySQL插入多条记录
- mybatis插入多条记录
- php插入多条记录
- 批量插入数据 SqlBulkCopy类
- .net 中的 SqlBulkCopy 批量插入会锁表吗?
- 使用ADO.NET下的SqlBulkCopy类执行批量复制操作
- quartz 配置文件说明(转贴)quartz 配置文件说明(转贴)
- 打包带sqlServer数据库方法
- sqlserver小技巧
- 糟糕的链表例子
- 求生存,求发展!
- ADO.NET-插入多条记录(用SqlBulkCopy类)
- Spring-mvc-jdbc知识点小结
- wince串口数据“丢失”,SetCommState设置失败
- 如何实现多进程写一个文件
- SQL优化34条
- 混合高斯背景建模
- sqlserver 2005局域网连接不上 解决
- javascript全面总结(可能别人看的有点乱,不过多看几遍就习惯了,每个*是一个知识点集合)
- 静态链接库LIB和动态链接库DLL