C#中事务的简单使用
生活随笔
收集整理的這篇文章主要介紹了
C#中事务的简单使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在C#中開啟事務的步驟
一、調用SqlConnection對象的BeginTransaction()方法,創建一個SqlTransaction對象,標志事務開始。
二、將創建的SqlTransaction對象分配給要執行的SqlCommand的Transaction屬性。
三、調用相應的方法執行SqlCommand命令。
四、調用SqlTransaction的Commit()方法完成事務。或調用Rollback()方法終止事務。??
需要注意的點
一、在調用BeginTransaction()方法開始事務之前,要打開數據庫連接,否則出現異常。
二、如果在事務的Commit()方法或RollBack()方法執行前數據庫連接斷開或關閉,則事務將回滾。
示例代碼
//準備連接字符串string str = "data source=.;initial catalog=Myschool;uid=sa;pwd=123";//創建數據庫連接對象SqlConnection con = new SqlConnection(str);//sql語句:添加一條記錄到年級表string sql = "insert into grade values(@gradename)";//創建SqlParameter對象,設置參數SqlParameter sp = new SqlParameter("@gradename", txtgradename.Text);//創建命令對象SqlCommand cmd = new SqlCommand(sql, con);//通過Parameter集合的add()方法天填充參數集合cmd.Parameters.Add(sp);//打開連接con.Open();//默認讓SqlTransaction對象為空SqlTransaction trans = null;//開啟事務:標志事務的開始trans = con.BeginTransaction();try{//將創建的SqlTransaction對象分配給要執行的sqlCommand的Transaction屬性cmd.Transaction = trans;//執行sql如果添加成功放回1int count=cmd.ExecuteNonQuery();if (count > 0){MessageBox.Show("成功");//事務提交trans.Commit();}else {MessageBox.Show("失敗");//事務回滾trans.Rollback();}}catch (Exception){//如果某個環節出現問題,則將整個事務回滾trans.Rollback();}?
總結
以上是生活随笔為你收集整理的C#中事务的简单使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringSecurity +Jwt
- 下一篇: 3D手势姿态跟踪算法:手机端实时检测,多