溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

VB.NET中怎么實現(xiàn)事務處理操作

發(fā)布時間:2021-07-15 11:34:48 來源:億速云 閱讀:143 作者:Leah 欄目:編程語言

VB.NET中怎么實現(xiàn)事務處理操作,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

要定義一個事務,需要使用Begin tran命令,在這一命令之后的任何語句都將被認為是事務的一部分。命令Commit用來完成VB.NET事務處理,并使事務對數(shù)據(jù)庫所作的修改成為***的。Rollback命令用來取消一個事務,并還原事務對數(shù)據(jù)庫所作的修改。

下面是一個SQL事務的例子:

  1. [SQL SERVER7.0 or SQL SERVER2000]  

  2. BEGIN TRAN  

  3. INSERT INTO PRODUCT(PRODUCTID, 
    PRODUCTNAME) VALUES("0001", "KEYBOARD")  

  4. IF (@ERROR>0) ROLLBACK  

  5. UPDATE PRODUCT SET PRICE=12 WHERE 
    PRODUCTID"0002" 

  6. IF (@ERROR>0) ROLLBACK  

  7. COMMIT  

  8. RETURN  

  9. ERRH:  

  10. ROLLBACK 

我們多數(shù)會將交易寫在STORED PROCEDURE中,但是如果出現(xiàn)DATAGRID中的多數(shù)據(jù)更新,就需要用到.NET中的這個System.Data.SqlClient.SqlTransaction和Try...Catch...Finally...End Try來處理異常!下列VB.NET事務處理代碼是VB.NET 中 SqlTransaction 的使用

  1. Dim connectionString As String = "server=local
    host;database=web;uid=sa;pwd=" 

  2. Dim conn As System.Data.SqlClient.SqlConnection = 
    New System.Data.SqlClient.SqlConnection
    (connectionString)  

  3. Dim cmd() As System.Data.SqlClient.SqlCommand  

  4. Dim trans As System.Data.SqlClient.SqlTransaction  

  5. Dim i As Integer, k As Integer  

  6. Dim SQL() As String  

  7. k = 2 

  8. SQL(0) = "update ..."  

  9. SQL(1) = "update ..."  

  10. SQL(2) = "update ..."  

  11. trans = conn.BeginTransaction()  

  12. For i = 0 To k  

  13. cmd(i) = New System.Data.SqlClient.Sql
    Command(SQL(i), conn)  

  14. cmd(i).Transaction = trans 

  15. Next  

  16. Try  

  17. For i = 0 To k  

  18. cmd(i).ExecuteNonQuery()  

  19. Next  

  20. trans.Commit()  

  21. Catch Ex As SqlException  

  22. trans.Rollback()  

  23. Finally  

  24. conn.Close()  

  25. End Try 

關于VB.NET中怎么實現(xiàn)事務處理操作問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業(yè)資訊頻道了解更多相關知識。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI