假設我在某個點擊事件觸發的表單中有以下代碼。MS Access中的交易
DoCmd.SetWarnings False
DoCmd.OpenQuery "AddSomeStuff"
DoCmd.OpenQuery "UpdateSomeOtherStuff"
DoCmd.OpenQuery "DeleteABunchOfCrap"
DoCmd.SetWarnings True
我可以假設這三個更新查詢我執行(SQL Server中)不是事務性的,因爲它們運行是獨立的交易?
假設我在某個點擊事件觸發的表單中有以下代碼。MS Access中的交易
DoCmd.SetWarnings False
DoCmd.OpenQuery "AddSomeStuff"
DoCmd.OpenQuery "UpdateSomeOtherStuff"
DoCmd.OpenQuery "DeleteABunchOfCrap"
DoCmd.SetWarnings True
我可以假設這三個更新查詢我執行(SQL Server中)不是事務性的,因爲它們運行是獨立的交易?
如果需要,訪問可以有交易,但是您在代碼中是正確的,每個交易都將自行執行。無論如何,這裏是一個小代碼示例
Public Sub Foo()
Dim wrk As Workspace
Dim db As DAO.Database
On Error GoTo Error_trap
Set wrk = DBEngine(0)(0)
Set db = wrk.OpenDatabase("mydb.mdb")
wrk.BeginTrans
db.Execute "AddStuff"
db.Execute "DeleteStuff"
db.Execute "UpdateStuff"
wrk.CommitTrans
db.Close
wrk.Close
Set db = Nothing
wt wrk = Nothing
Exit Sub
Error_trap:
wrk.Rollback
MsgBox "Something went wrong!"
End Sub
訪問有這個東西稱爲幫助文件。這非常有用。 – 2010-05-14 02:53:06