SqlBuckCopy使用记录

引用自:SqlBulkCopy - 青兰柳 - 博客园 (cnblogs.com)

 

SqlBulkCopy

 

批量插入数据

新建一个table

DataTable table = new DataTable(); //声明表(该表存于本地服务器端,输入插入该表之后,再将这张表插入数据库) table.Columns.Add(Id); table.Columns.Add(Column1); table.Columns.Add(Column2); 。。。。。。。。

从其他地方读取数据比如excel表格,txt等

复制代码
 using (System.IO.StreamReader sr = new System.IO.StreamReader(@文件地址))
{ // 从文件读取并显示行,直到文件的末尾 while (!string.IsNullOrEmpty(line = sr.ReadLine())) { string[] items = line.Split(';'); var column1= items[0]); var column2 = items[1]); var column3 = ipitems[2]; DataRow row = table.NewRow(); row[Id]=index; row[Column1] = column1; row[Column2] = column2 ; row[Column3] = column3; //根据数据库表设计改变类型 table.Rows.Add(row); //查看索引值 System.Diagnostics.Debug.WriteLine(index); index++; }
}


      using (SqlBulkCopy buckCopy = new SqlBulkCopy(dbHelperSQLP.connectionString))
      {
        buckCopy.BatchSize = 1000;//每一批发送给数据库服务器的行数
        buckCopy.DestinationTableName = 数据库中的表名;
        buckCopy.ColumnMappings.Add(Id, Id);
        buckCopy.ColumnMappings.Add(Column1, Column1);
        buckCopy.ColumnMappings.Add(Column2, Column2);
        buckCopy.ColumnMappings.Add(Column3, Column3);
        buckCopy.WriteToServer(table);
      }