批量插入数据 C# SqlBulkCopy使用(当插入超过1000行用)
- private static void DataTableToSQLServer( DataTable dt)
- {
- string connectionString = GetConnectionString();
-
- using (SqlConnection destinationConnection =new SqlConnection(connectionString))
- {
- destinationConnection.Open();
-
- using (SqlBulkCopy bulkCopy =new SqlBulkCopy(destinationConnection))
- {
-
-
- try
- {
-
- bulkCopy.DestinationTableName = "T_EIInformation";//要插入的表的表名
- bulkCopy.ColumnMappings.Add("Email", "Email");//映射字段名 DataTable列名 ,数据库 对应的列名
- bulkCopy.ColumnMappings.Add("author", "author");
- bulkCopy.ColumnMappings.Add("Title", "Title");
- bulkCopy.ColumnMappings.Add("Type", "Type");
- bulkCopy.ColumnMappings.Add("confName", "confName");
- bulkCopy.ColumnMappings.Add("Language", "Language");
- bulkCopy.ColumnMappings.Add("Publicationyear", "Publicationyear");
- bulkCopy.ColumnMappings.Add("Conferencelocation", "Conferencelocation");
- bulkCopy.WriteToServer(dt);
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex.Message);
- }
- finally
- {
- // Close the SqlDataReader. The SqlBulkCopy
- // object is automatically closed at the end
- // of the using block.
-
- }
- }
-
-
- }
-
- }
欢迎关注本站公众号,获取更多信息