您好,登錄后才能下訂單哦!
VB.NET中怎么實現事務處理操作,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
要定義一個事務,需要使用Begin tran命令,在這一命令之后的任何語句都將被認為是事務的一部分。命令Commit用來完成VB.NET事務處理,并使事務對數據庫所作的修改成為***的。Rollback命令用來取消一個事務,并還原事務對數據庫所作的修改。
下面是一個SQL事務的例子:
[SQL SERVER7.0 or SQL SERVER2000]
BEGIN TRAN
INSERT INTO PRODUCT(PRODUCTID,
PRODUCTNAME) VALUES("0001", "KEYBOARD")
IF (@ERROR>0) ROLLBACK
UPDATE PRODUCT SET PRICE=12 WHERE
PRODUCTID= "0002"
IF (@ERROR>0) ROLLBACK
COMMIT
RETURN
ERRH:
ROLLBACK
我們多數會將交易寫在STORED PROCEDURE中,但是如果出現DATAGRID中的多數據更新,就需要用到.NET中的這個System.Data.SqlClient.SqlTransaction和Try...Catch...Finally...End Try來處理異常!下列VB.NET事務處理代碼是VB.NET 中 SqlTransaction 的使用
Dim connectionString As String = "server=local
host;database=web;uid=sa;pwd="Dim conn As System.Data.SqlClient.SqlConnection =
New System.Data.SqlClient.SqlConnection
(connectionString)Dim cmd() As System.Data.SqlClient.SqlCommand
Dim trans As System.Data.SqlClient.SqlTransaction
Dim i As Integer, k As Integer
Dim SQL() As String
k = 2
SQL(0) = "update ..."
SQL(1) = "update ..."
SQL(2) = "update ..."
trans = conn.BeginTransaction()
For i = 0 To k
cmd(i) = New System.Data.SqlClient.Sql
Command(SQL(i), conn)cmd(i).Transaction = trans
Next
Try
For i = 0 To k
cmd(i).ExecuteNonQuery()
Next
trans.Commit()
Catch Ex As SqlException
trans.Rollback()
Finally
conn.Close()
End Try
關于VB.NET中怎么實現事務處理操作問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。