我試圖確保一些存儲過程不應該有RETURN
語句,除了最後一個。對於這個任務,我試圖在我的PowerShell腳本上使用常規表達式。 我的策略是檢查每個IF @@ERROR<>0
塊並在其中執行另一個搜索。如何匹配此SQL查詢的每個IF
塊的內容?匹配IF代碼塊之間的內容
--Some code here...
IF @@ERROR<>0
BEGIN
RAISERROR('MY ERROR HERE. %s',1,16,@STORE_PROCEDURE_NAME)
GOTO ROLL
END
--More code here...
IF @@ERROR<>0
BEGIN
RAISERROR('ANOTHER ERROR HERE. %s',16,1,@STORE_PROCEDURE_NAME)
GOTO ROLL
END
--more code here...
IF @@ERROR<>0
BEGIN
RAISERROR('MAIN ERROR %s',16,1,@STORE_PROCEDURE_NAME)
ROLL:
ROLLBACK TRANSACTION
RETURN
END
COMMIT TRANSACTION
你基本上是問如何捕捉之間IF @@ ERROR <> 0 BEGIN ...和END的東西嗎? –
是的,就是這樣。我找到了一個方法 –