일부 .sql 파일에 구문 오류가있을 때 SQLCMD 유틸리티에서 % ERRORLEVEL %을 어떻게 얻을 수 있습니까? 이러한 파일은 저장 프로 시저를 만듭니다. 그들은 "raiseerror"를 호출하지는 않지만, 구문 오류를 일으킬 수 있으며 프로세스를 종료해야합니다. 하지만 항상 % ERRORLEVEL %를 0으로 반환합니다. -b, -V 및 -m (및 그 조합)을 사용하려고했지만 예상대로 작동하지 않았습니다.BAT 파일의 SQLCMD 유틸리티 - 구문 오류 인 경우 ERRORLEVEL을 반환하는 방법
다음은 BAT 파일의 코드입니다.
REM process all sql files in "SQL\scripts" folder and subfolders
FOR /R "SQL\scripts" %%G IN (*.sql) DO (
sqlcmd -d %1 -S %2 -U %3 -P %4 -i "%%G" -b -V 1
echo %ERRORLEVEL%
IF %ERRORLEVEL% NEQ 0 EXIT /B %ERRORLEVEL%
)
감사합니다. 정확하게 알고 싶습니다. – kovalu