標籤:
寫過批次更新的代碼,為了方便尋找,發上來
1 class DBHelper 2 { 3 //操作設定檔 4 Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 5 //先取一次,做為對比的基礎 6 SqlConnection conn = new SqlConnection(); 7 SqlCommand comm = new SqlCommand(); 8 //連結資料庫 9 public void Open()10 {11 conn = new SqlConnection(config.AppSettings.Settings["connstr"].Value);12 conn.Open();13 }14 //中斷連線15 public void Close()16 {17 conn.Close();18 }19 //執行sql,並返回第一行第一列20 public object ExecuteScalar(string sql)21 {22 comm.CommandText = sql;23 comm.Connection = conn;24 return comm.ExecuteScalar();25 }26 //執行sql,並返回執行結果27 public DataTable GetResult(string sql)28 {29 SqlDataAdapter sda = new SqlDataAdapter(sql, conn);30 DataTable dt = new DataTable();31 sda.Fill(dt);32 return dt;33 }34 //執行sql35 public void ExecuteNonQuery(string sql)36 {37 comm.CommandText = sql;38 comm.ExecuteNonQuery();39 }40 //批次更新41 public void Update(DataTable dt, string tablename)42 {43 using (SqlBulkCopy sqlcopy = new SqlBulkCopy(conn))44 {45 sqlcopy.BulkCopyTimeout = 10000;46 sqlcopy.DestinationTableName = tablename;47 sqlcopy.WriteToServer(dt);48 }49 }50 }
sqlserver批次更新