打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
数据库批量处理 SqlBulkCopy 的使用
  private void btnAction_Click(object sender, RoutedEventArgs e)
        {
            string connStr = ConfigurationManager.ConnectionStrings["dbConnStr"].ConnectionString;


            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "文本文件|*.txt";
            if (ofd.ShowDialog() == false)
            { return; }
            string[] lines = File.ReadLines(ofd.FileName, Encoding.Default).ToArray();


            DateTime startTime = DateTime.Now;


            DataTable table = new DataTable();
            table.Columns.Add("aa");
            table.Columns.Add("bb");
            table.Columns.Add("cc");
            table.Columns.Add("dd");


            for (int i = 1; i < lines.Count(); i++)//过滤掉第一行
            {
                string line = lines[i];
                string[] strs = line.Split('\t');
                string startTelNum = strs[0].Trim('"');
                string telAera = strs[1].Trim('"');
                string telType = strs[2].Trim('"');
                string aeraNum = strs[3].Trim('"');


                DataRow row = table.NewRow();
                row["aa"] = startTelNum;
                row["bb"] = telAera;
                row["cc"] = telType;
                row["dd"] = aeraNum;
                table.Rows.Add(row);
            }


            using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connStr))
            {
                bulkCopy.DestinationTableName = "T_TelNum";
                bulkCopy.ColumnMappings.Add("aa", "StartTelNum");
                bulkCopy.ColumnMappings.Add("bb", "TelAera");
                bulkCopy.ColumnMappings.Add("cc", "TelType");
                bulkCopy.ColumnMappings.Add("dd", "AeraNum");
                bulkCopy.WriteToServer(table);
            }


            TimeSpan ts = DateTime.Now - startTime;
            MessageBox.Show(ts.ToString() + "秒!");
        }  
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
C#从文本文件中读取数据大批量导入数据库
C#往SQLServer中插入大数据
使用SqlBulkCopy进行数据大批量的迁移
使用asp.net 2.0中的SqlBulkCopy类批量复制数据
2秒内向数据库中插入十万条数据?微软自带的SqlBulkCopy
sql server中批量插入与更新两种解决方案分享
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服