SqlBulkCopy的一个例子
1 public bool InsertAll(IList<NewStockLuoPan> list) 2 { 3 DataTable dt = new DataTable(); 4 dt.Columns.Add("StockNo",typeof(string)); 5 dt.Columns.Add("Angel", typeof(int)); 6 dt.Columns.Add("YesterDayAmountIn", typeof(decimal)); 7 dt.Columns.Add("TwoDayAmountInTest", typeof(string)); 8 dt.Columns.Add("YesterDay10AmountIn", typeof(decimal)); 9 dt.Columns.Add("TenDayAmountInTest", typeof(string)); 10 dt.Columns.Add("CreatedDate", typeof(DateTime)); 11 12 foreach (var item in list) 13 { 14 DataRow dr = dt.NewRow(); 15 dr["StockNo"] = item.StockNo; 16 dr["Angel"] = item.Angel; 17 dr["YesterDayAmountIn"] = item.YesterDayAmountIn; 18 dr["TwoDayAmountInTest"] = item.TwoDayAmountInTest; 19 dr["YesterDay10AmountIn"] = item.YesterDay10AmountIn; 20 dr["TenDayAmountInTest"] = item.TenDayAmountInTest; 21 dr["CreatedDate"] = item.CreatedDate; 22 23 dt.Rows.Add(dr); 24 } 25 27 using (SqlBulkCopy sqlBC=new SqlBulkCopy(connstr)) 28 { 29 sqlBC.DestinationTableName = "dbo.table"; 30 sqlBC.ColumnMappings.Add("StockNo", "StockNo"); 31 sqlBC.ColumnMappings.Add("Angel", "Angel"); 32 sqlBC.ColumnMappings.Add("YesterDayAmountIn", "YesterDayAmountIn"); 33 sqlBC.ColumnMappings.Add("TwoDayAmountInTest", "TwoDayAmountInTest"); 34 sqlBC.ColumnMappings.Add("YesterDay10AmountIn", "YesterDay10AmountIn"); 35 sqlBC.ColumnMappings.Add("TenDayAmountInTest", "TenDayAmountInTest"); 36 sqlBC.ColumnMappings.Add("CreatedDate", "CreatedDate"); 37 sqlBC.WriteToServer(dt); 38 } 39 return true; 40 }