bulkwrite 批量插入_使用SqlBulkCopy批量插入数据
static void Main(string[] args)
{//定義與目標表結構相同的DataTable
DataTable dataTable = newDataTable();
dataTable.Columns.Add(new DataColumn() { ColumnName = "EmployeeId", DataType = System.Type.GetType("System.String") });
dataTable.Columns.Add(new DataColumn() { ColumnName = "LastName", DataType = System.Type.GetType("System.String") });
dataTable.Columns.Add(new DataColumn() { ColumnName = "FirstName", DataType = System.Type.GetType("System.String") });//...此處省略很多行//插入數據行, 請注意不同類型的賦值, 這里應該根據實際情況添加很多行
DataRow dataRow =dataTable.NewRow();
dataRow["EmployeeId"] = "000001";
dataRow["LastName"] = "Nick";
dataRow["FirstName"] = "Yang";//此處省略插入很多行
dataTable.Rows.Add(dataRow);string connStr = "Data Source=.;Database=ABC;user id=sa;password=***;Persist Security Info=True";
SqlConnection conn= newSqlConnection(connStr);
conn.Open();
SqlTransaction sqlbulkTransaction=conn.BeginTransaction();
SqlBulkCopy copy= newSqlBulkCopy(conn, SqlBulkCopyOptions.CheckConstraints, sqlbulkTransaction);
copy.DestinationTableName= "dbo.目標表表名";//這里假設上面定義的DataTable與目標表結構相同
foreach (DataColumn dc indataTable.Columns)
{
copy.ColumnMappings.Add(dc.ColumnName, dc.ColumnName);
}try{
copy.WriteToServer(dataTable);
sqlbulkTransaction.Commit();
}catch(Exception ex)
{
sqlbulkTransaction.Rollback();
Console.WriteLine(ex.ToString());
}finally{
copy.Close();
conn.Close();
}
}
總結
以上是生活随笔為你收集整理的bulkwrite 批量插入_使用SqlBulkCopy批量插入数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 的table数据重复添加_Mysql的奇
- 下一篇: 什么地方容易刷出ak_CSGO皮肤推荐—