標籤:des style blog color io os ar 使用 sp
批量插入,以前我的做法是產生一堆insert into的sql語句,然後用程式一次值行,來實現。
今天看到了ASP.Net裡可以使用DataTable,先將資料寫入到DataTable中,然後使用SqlBulkCopy方法,給他傳遞一個DataTable類型,他自動會實現批量插入。
速度極快。
做法備忘一下在這裡,以便日後查閱
protected void Button1_Click(object sender, EventArgs e) { //準備要批量插入的資料 DataTable table = new DataTable(); table.Columns.Add("Age"); table.Columns.Add("Name"); DataRow row = table.NewRow(); row["Age"] = 28; row["Name"] = "Jack"; table.Rows.Add(row); DataRow row1 = table.NewRow(); row1["Age"] = 29; row1["Name"] = "Fei"; table.Rows.Add(row1); string connectionStr = "server=.;database=Demo;uid=sa;pwd=123456"; using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connectionStr)) { bulkCopy.DestinationTableName = "Person";//在插入的目標表 //DataTable列名與資料庫列名的映射 bulkCopy.ColumnMappings.Add("Age", "Age"); bulkCopy.ColumnMappings.Add("Name", "Name"); bulkCopy.WriteToServer(table);//寫入到資料庫中 } Response.Write("ok"); }
ASP.Net 使用SqlBulkCopy批量插入