ADO.NET - Updating Multiple DataTablesSqlDataAdapter的多個表和交易
我發現上面的問題,這正是我要尋找並試圖實現一個解決方案...
我想看到更新多一個最好的解決方案表進入sqlserver 2008並確保多個表上的事務。如果插入到一個表失敗,則回滾其他表上的先前更新。
- SqlDataAdapter的一次只
- 我知道我們可以在一個時間上的一個DataAdapter的做交易,但需要更新,從上面提供的答案修改多個表
下面是代碼更新一個表,但它與dataadapter錯誤。我想我需要設置插入,更新和刪除命令,但不知道如果有多個表如何工作?有人可以填寫缺失的鏈接嗎?
using (SqlConnection con = new SqlConnection(SqlServerConnectionString))
{
con.Open();
//table is an array of datatable and contains data to be inserted
for (int i = 0; i < table.Length; i++)
{
ds.Tables.Add(table[i]);
}
SqlTransaction trans = con.BeginTransaction();
SqlDataAdapter dataAdapter = new SqlDataAdapter();
//Need to set insert,select, update, delete???? on multiple tables?
//dataAdapter.Fill(ds);
dataAdapter.InsertCommand.Transaction = trans; //null object error here
dataAdapter.UpdateCommand.Transaction = trans;
dataAdapter.DeleteCommand.Transaction = trans;
try
{
dataAdapter.Update(ds);
trans.Commit();
}
catch(Exception ex)
{
trans.Rollback();
}
閱讀該答案的第二條評論。 – LarsTech
我發佈之前已經閱讀過很多次;不幸的是我仍然迷惑。但尋找一個最佳實踐,實現這... – wirble