1. 程式人生 > >c# SqlBulkCopy實現批量從資料集中把資料匯入到資料中

c# SqlBulkCopy實現批量從資料集中把資料匯入到資料中

今天遇到了一個匯入類第一次見 SqlBulkCopy 可以實現從一個數據集匯入到資料庫中的表中 本來想從資料集中一條條遍歷insert到庫中

有了這個後發現:

只在把表與資料集的列做一下對應關係,再走一個WriteToServer()方法就全進庫裡了程式碼如下(con一定要open()):

 using (SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=123;database=oa"))
            {
                con.Open();
                using (SqlBulkCopy sbc = new
SqlBulkCopy(con)) { sbc.DestinationTableName = "a";//要匯入表的表名 我這個表就是A SqlBulkCopyColumnMapping mp = new SqlBulkCopyColumnMapping("name", "cCode");//對應關係 我把name 列的值匯入到 a的cCode列 sbc.ColumnMappings.Add(mp);//新增進去 using
(SqlDataAdapter adp = new SqlDataAdapter("select name from dbo.bbsCatalog", con))//把name所在的表 查詢到datatable中 { DataTable dt = new DataTable(); adp.Fill(dt); sbc.WriteToServer(dt);//匯入到A表中 }
} } Console.WriteLine(
"成功"); Console.ReadKey();

示例程式碼: