我想開發一個批處理腳本,它將執行批處理文件所在文件夾中存在的每個.sql SQL腳本,並將日誌記錄到filename_sqloutput.txt文件中。 條件是:如果任何腳本提供任何錯誤消息,如列名稱不正確或表名等。腳本執行應立即停止,並且不應執行其他腳本。在目錄中執行SQL腳本的批處理腳本
我試着用下面的代碼:但它不工作,即使腳本在輸出文件中給出錯誤。腳本執行不停止。
需要你的幫助!
@echo off
for /f %%a IN ('dir /b *.sql') do (call sqlcmd -S AMRVSP000000318 -i %%a -o"%%~na_sqloutput.txt"
findstr "Msg" %%~na_sqloutput.txt >nul & if %errorlevel% EQU 1 (exit) else (echo Successfully executed %%~na_sqloutput.txt)
)
pause
更改'FINDSTR 「消息」 %%〜na_sqloutput.txt> NUL&如果%ERRORLEVEL%EQU 1(出口) else(echo已成功執行%%〜na_sqloutput.txt)'by'findstr「Msg」%%〜na_sqloutput.txt> nul && exit || echo成功執行%%〜na_sqloutput.txt' – Aacini