以鎖定應用程序資源(sp_getapplock / sp_releaseapplock)為例:
sp_getapplock沒有返回參數(output類型的),只是在sp中用return來返回值
加鎖:
dim cmd as adodb.command
set cmd = new adodb.command
cmd.activeconnection = cnn
cnn.begintrans
cnn.execute "use master"
cmd.commandtype = adcmdstoredproc
cmd.commandtext = "sp_getapplock"
系統識別格式為:'"{ ? = call sp_getapplock(?,?,?,?) }"
cmd.prepared = true
cmd.parameters(1) = "lock name" '資源鎖的名稱
cmd.parameters(2) = "exclusive"
cmd.parameters(3) = "transaction"
cmd.parameters(4) = 0 '用于接收sp 中return關鍵字返回的值
cmd.execute
msgbox cmd.parameters(0) 'display return value
解鎖:
dim cmd as adodb.command
set cmd = new adodb.command
cmd.activeconnection = cnn
cmd.commandtype = adcmdstoredproc
cmd.commandtext = "sp_releaseapplock"
cmd.parameters(1) = "lock name" '被鎖資源名稱
cmd.parameters(2) = "transaction"
cmd.execute
msgbox cmd.parameters(0)
新聞熱點
疑難解答