欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用SqlBulkCopy将DataTable百万级数据瞬间入库

程序员文章站 2022-08-10 16:05:51
#region 使用SqlBulkCopy将DataTable中的数据批量插入数据库中 /// /// 注意:DataTable中的列需要与数据库表中的列完全一致。/// /// 数据库连接串 /// 数据库中对应的表名 /// 数据集 public static ... ......
        #region 使用sqlbulkcopy将datatable中的数据批量插入数据库中
        /// <summary>  
        /// 注意:datatable中的列需要与数据库表中的列完全一致。/// </summary>  
        /// <param name="constr">数据库连接串</param>
        /// <param name="strtablename">数据库中对应的表名</param>  
        /// <param name="dtdata">数据集</param>  
        public static void sqlbulkcopyinsert(string constr, string strtablename, datatable dtdata)
        {
            try
            {
                using (sqlbulkcopy sqlrevdbulkcopy = new sqlbulkcopy(constr))           //引用sqlbulkcopy  
                {
                    sqlrevdbulkcopy.destinationtablename = strtablename;                //数据库中对应的表名  
                    sqlrevdbulkcopy.notifyafter = dtdata.rows.count;                    //有几行数据  
                    sqlrevdbulkcopy.writetoserver(dtdata);                              //数据导入数据库  
                    sqlrevdbulkcopy.close();                                            //关闭连接  
                }
            }
            catch (exception ex)
            {
                throw (ex);
            }
        }
        #endregion