zoukankan      html  css  js  c++  java
  • C#批量保存方法利用Net SqlBulkCopy 批量导入数据库,速度超快通用方法源码提供

    #region public void SqlBulkCopyData(DataTable dataTable) 利用Net SqlBulkCopy 批量导入数据库,速度超快
            /// <summary>
            /// 利用Net SqlBulkCopy 批量导入数据库,速度超快
            /// </summary>
            /// <param name="dataTable">源内存数据表</param>
            public void SqlBulkCopyData(DataTable dataTable)
            {
                // SQL 数据连接
                SqlConnection sqlConnection = null;
                // 打开数据库
                this.Open();
                // 获取连接
                sqlConnection = (SqlConnection)GetDbConnection();
                using (SqlTransaction tran = sqlConnection.BeginTransaction())
                {
                    // 批量保存数据,只能用于Sql
                    SqlBulkCopy sqlbulkCopy = new SqlBulkCopy(sqlConnection, SqlBulkCopyOptions.Default, tran);
                    // 设置源表名称
                    sqlbulkCopy.DestinationTableName = dataTable.TableName;
                    // 设置超时限制
                    sqlbulkCopy.BulkCopyTimeout = 1000;

                    foreach (DataColumn dtColumn in dataTable.Columns)
                    {
                        sqlbulkCopy.ColumnMappings.Add(dtColumn.ColumnName, dtColumn.ColumnName);
                    }
                    try
                    {
                        // 写入
                        sqlbulkCopy.WriteToServer(dataTable);
                        // 提交事务
                        tran.Commit();
                    }
                    catch
                    {
                        tran.Rollback();
                        sqlbulkCopy.Close();
                    }
                    finally
                    {
                        sqlbulkCopy.Close();
                        this.Close();
                    }
                }
            }
            #endregion

    作者:王春天 地址:http://www.cnblogs.com/spring_wang/

  • 相关阅读:
    RabbitMQ安全相关的网络资源介绍
    种植玉米,发酵与生物燃料的制作
    一致哈希算法Java实现
    添加xml文件编辑语法提示
    【转】10分钟搭建NDK的Android开发环境
    【转】Windows环境下Android NDK环境搭建
    【转】蓝牙4.0——Android BLE开发官方文档翻译
    【转】java提高篇(十)-----详解匿名内部类
    【转】Android自定义View的实现方法,带你一步步深入了解View(四)
    【转】java枚举类型enum的使用
  • 原文地址:https://www.cnblogs.com/spring_wang/p/3074017.html
Copyright © 2011-2022 走看看