c sql事務處理

2021-08-01 21:48:47 字數 1610 閱讀 4004

sql事務處理

[csharp]view plain

copy

/// 

/// 啟用事務提交多條帶引數的sql語句

/// 

/// 主表sql

/// 主表對應的引數

/// 明細表sql語句

/// 明細表對應的引數

/// 返回事務是否成功

public

static

bool

updatebytran(

string

mainsql, sqlparameter mainparam, 

string

detailsql, listdetailparam)  

foreach

(sqlparameter param 

indetailparam)  

cmd.transaction.commit();//提交事務

return

true

;  }  

catch

(exception ex)  

//將異常資訊寫入日誌 

string

errorinfo = 

"呼叫updatebytran(string mainsql,  sqlparameter mainparam,string detailsql ,list detailparam)方法時發生錯誤,具體資訊:"

+ ex.message;  

writelog(errorinfo);  

throw

ex;  

}  finally

conn.close();  

}  }  

c#中使用

[csharp]view plain

copy

//讀者借書

public

bool

addborrowinfo(borrowinfo objborrowinfo)  

;  //副表實現

string

sqldetail = 

"insert into borrowdetail(borrowid, bookid, borrowcount, nonreturncount, expire)values(@borrowid, @bookid, @borrowcount, @nonreturncount, @expire)"

;  listdetaillist = objborrowinfo.detaillist;  

listparamlist = new

list();  

sqlparameter paramt = null

;   

foreach

(borrowdetail item 

indetaillist)  

;  paramlist.add(paramt);  

}  //新增借書

return

sqlhelper.updatebytran(sqlmain, param, sqldetail, paramlist);  

}  

c sql事務處理

sql事務處理 啟用事務提交多條帶引數的sql語句 主表sql 主表對應的引數 明細表sql語句 明細表對應的引數 返回事務是否成功 public static bool updatebytran string mainsql,sqlparameter mainparam,string detail...

PB事務處理

1 資料視窗更新,只要dberror有錯誤,而事先沒有做過任何commit工作,那麼rollback可以回滾到上次commit位置,即上次commit後所有的資料將被回滾。2 如果是直接寫入sql語句,只要資料庫出現錯誤,那麼rollback可以回滾到上次commit的位置,即上次commit後所有...

MySQL事務處理

start transaction,commit和rollback語法 start transaction begin work commit work and no chain no release rollback work and no chain no release set autocom...