asp事務處理
作者:Eve Cole
更新時間:2009-06-24 17:28:33
當大量的對資料庫進行插入,修改,刪除等操作時,如果要實現事務,可以使用以下程式碼。如:
<%@ TRANSACTION = Required%>
On Error Resume Next
strSql1="insert into a(num) values(1)"
strSql2="insert into a(num) values('a')"
'執行第一個sql語句
'執行第二個sql語句
'如果不用到事務,則第一個sql語句會提交到資料庫中。
'另外經查看資料庫發現,資料庫的交易回滾其實是執行相對應的反操作。執行insert,則在回滾裡會執行delete操作。可以透過觀看主鍵id的變化來得到。
If Err Then
ObjectContext.SetAbort '通知所有支援交易的元件回滾
Else
ObjectContext.SetComplete
End If
Sub OnTransactionAbort
Response.Write "錯誤"
'注意如果在前面用到了一些非資料庫方面的操作,如文件操作,建立文件,刪除文件等。需要在此加上文件的回滾操作。前面建立文件,則在此需要相應的刪除文件。
End Sub
Sub OnTransactionCommit
Response.Write "成功"
End Sub