批量插入数据 C# SqlBulkCopy使用

来源:互联网 发布:跟矮个子女生啪啪知乎 编辑:程序博客网 时间:2024/06/16 07:47
[csharp] view plain copy
  1. private static void DataTableToSQLServer( DataTable dt)  
  2. {  
  3.     string connectionString = GetConnectionString();  
  4.     using (SqlConnection destinationConnection =new SqlConnection(connectionString))  
  5.     {  
  6.         destinationConnection.Open();  
  7.         using (SqlBulkCopy bulkCopy =new SqlBulkCopy(destinationConnection))  
  8.         {  
  9.             try  
  10.             {  
  11.                 bulkCopy.DestinationTableName = "T_EIInformation";//要插入的表的表明  
  12.                 bulkCopy.ColumnMappings.Add("Email""Email");//映射字段名 DataTable列名 ,数据库 对应的列名  
  13.                 bulkCopy.ColumnMappings.Add("author""author");  
  14.                 bulkCopy.ColumnMappings.Add("Title""Title");  
  15.                 bulkCopy.ColumnMappings.Add("Type""Type");  
  16.                 bulkCopy.ColumnMappings.Add("confName""confName");  
  17.                 bulkCopy.ColumnMappings.Add("Language""Language");  
  18.                 bulkCopy.ColumnMappings.Add("Publicationyear""Publicationyear");  
  19.                 bulkCopy.ColumnMappings.Add("Conferencelocation""Conferencelocation");  
  20.                 bulkCopy.WriteToServer(dt);  
  21.             }  
  22.             catch (Exception ex)  
  23.             {  
  24.                 Console.WriteLine(ex.Message);  
  25.             }  
  26.             finally  
  27.             {  
  28.                 // Close the SqlDataReader. The SqlBulkCopy  
  29.                 // object is automatically closed at the end  
  30.                 // of the using block.  
  31.             }  
  32.         }  
  33.     }  
  34. }