SqlBulkCopy 批量插入 用DataTable 直接插入数据库表

        /// <summary>
        /// 执行SqlBulkCopy批量插入,执行事务。
       s/// </summary>
        /// <param name="connectionString">数据连接</param>
        /// <param name="TableName">表名</param>
        /// <param name="dt">要插入的数据</param>
        /// <returns></returns>
        public static int ExecuteSqlTranWithSqlBulkCopy(string connectionString, string TableName, DataTable dt)
        {
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                using (SqlBulkCopy sqlbulkcopy = new SqlBulkCopy(connectionString, SqlBulkCopyOptions.UseInternalTransaction))
                {
                    try
                    {
                        sqlbulkcopy.DestinationTableName = TableName;
                        for (int i = 0; i < dt.Columns.Count; i++)
                        {
                            sqlbulkcopy.ColumnMappings.Add(dt.Columns[i].ColumnName, dt.Columns[i].ColumnName);
                        }
                        sqlbulkcopy.WriteToServer(dt);
                        return 1;
                    }
                    catch (System.Exception ex)
                    {

                        return 0;
                    }
                }
            }
        }
    }
原文地址:https://www.cnblogs.com/mrliuc/p/1938271.html