`
free_bird816
  • 浏览: 198247 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

sqlBulkCopy

 
阅读更多

/// <summary>
        /// 使用新的API,批量导入,这个速度很快,大约26毫秒,很显然,这种方式只写一次日志,不会为每一行写日志
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btBCP_Click(object sender, EventArgs e)
        {
            using (SqlConnection conn = new SqlConnection(GetConnectionString()))
            {
                SqlBulkCopy bcp = new SqlBulkCopy(conn);
                bcp.DestinationTableName = "Customers";
                bcp.BatchSize = 100;//这是批尺寸可以调整
                for (int i = 0; i < 11; i++)
                {
                    bcp.ColumnMappings.Add(i, i);
                }
                TimeSpan startTime = System.Diagnostics.Process.GetCurrentProcess().UserProcessorTime;
                conn.Open();
                bcp.WriteToServer(ds.Tables[0]);
                TimeSpan duration = System.Diagnostics.Process.GetCurrentProcess().UserProcessorTime.Subtract(startTime);
                MessageBox.Show("已经全部插入成功,所用时间为" + duration.Milliseconds.ToString() + "毫秒");

            }
        }

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics