大数据插入类-System.Data.SqlClient.SqlBulkCopy
2010-05-08 23:10
453 查看
上个项目中开发中有个数据同步功能,我需要插入大量数据,网上查资料,发现微软提供了一个System.Data.SqlClient.SqlBulkCopy累,让大数量插入到MSSQL数据库中可以很快搞定。
项目中一个表100W条数据,普通SQL插入语句,花了10多分钟。
使用System.Data.SqlClient.SqlBulkCopy插入,只用了几秒钟。
下面是主要的代码:
项目中一个表100W条数据,普通SQL插入语句,花了10多分钟。
使用System.Data.SqlClient.SqlBulkCopy插入,只用了几秒钟。
下面是主要的代码:
//省略连接字符串 SqlConnection conn = new SqlConnection("....."); conn.Open(); //初始化类 using (System.Data.SqlClient.SqlBulkCopy sqlBC = new System.Data.SqlClient.SqlBulkCopy(conn)) { //获取需要导入的数据表 DataTable dt = GetDataTable(); //每10W条数据一个事物 sqlBC.BatchSize = 100000; //超时时间 sqlBC.BulkCopyTimeout = 60; //表名Users sqlBC.DestinationTableName = "dbo.Users"; //字段对应,分表为原数据表字段名,和导入数据库的字段名 sqlBC.ColumnMappings.Add("Access_ID", "MSSQL_ID"); sqlBC.ColumnMappings.Add("Access_Name", "MSSQL_Name"); //sqlBC.ColumnMappings.Add("Access_...", "MSSQL_..."); //sqlBC.ColumnMappings.Add("Access_...", "MSSQL_..."); //导入到数据库 sqlBC.WriteToServer(dt);
相关文章推荐
- 大数据插入类-System.Data.SqlClient.SqlBulkCopy
- DataTable数据批量插入数据的库三种方法:SqlCommand.EcecuteNonQurery(),SqlDataAdapter.Update(DataTable) ,SqlBulkCopy.
- System.Data.SqlClient.SqlBulkCopy的使用方法
- SqlBulkCopy 快速插入数据到SqlServer 数据库
- System.Data.SqlClient.SqlException: 将截断字符串或二进制数据。语句已终止
- SqlBulkCopy来实现批量插入数据的功能
- C# SqlBulkCopy实现大数据插入数据库
- Sql Server数据库之通过SqlBulkCopy快速插入大量数据
- System.Data.SqlClient.SqlException: 数据类型 text 和 varchar 在 equal to 运算符中不兼容。
- c# 数据库批量插入数据SqlBulkCopy 示例
- c#向数据库插入较大数据(SqlBulkCopy)
- .net 使用SqlBulkCopy极速插入数据到 SQL Server
- 使用SqlBulkCopy进行批量插入数据时踩过的坑
- SqlBulkCopy 排除错误的数据 插入正确的数据
- 使用SqlBulkCopy将DataTable中的数据批量插入数据库中
- SQL2005数据备份时提示:System.Data.SqlClient.SqlError: 媒体集有 2 个媒体簇,但只提供了 1 个。
- asp.net中遇到这样的异常:System.Data.SqlClient.SqlException: 将截断字符串或二进制数据。语句已终止。
- 使用SqlBulkCopy把DataTable里的数据插入数据表
- 批量插入数据 C# SqlBulkCopy使用