필요에 따라 SQL 명령을 실행하기 위해 .bat 파일을 실행할 필요가 있습니다. if
이 for
에 중첩되어 있고 if
이 참일 때까지 반복되어야합니다..bat 파일의 간단한 논리?
내가 무엇을 가지고 :
내가 이동하는 경우는, 루프 안타@echo off
cd "%UserProfile%\Desktop\Scripting\"
FOR /f "delims=" %%a in ('type queue.txt') DO (
:loop
IF EXIST reset.sql (
goto loop
) ELSE (
::Create SQL command
echo USE dbname> reset.sql
echo EXEC dbo.sp_ResetSubscription @ClientName = '%%a'>> reset.sql
echo EXEC dbo.sp_RunClientSnapshot @ClientName = '%%a'>> reset.sql
sqlcmd -i "reset.sql"
if exist reset.sql del /f /q reset.sql
)
)
if exist queue.txt del /f /q queue.txt
이 폭탄을 :하지만 그 많은 사용 그것이 잘 작동하는 if 문 이내 어디에서 루프 없습니다.
내가해야 할 일은 reset.sql
이 존재하지 않을 때까지 루프를 계속 유지하면서 루프의 동일한 반복 내에서 머무르는 것입니다.
원본과 동일한 이유로 작동하지 않습니다. [내 대답] (http://stackoverflow.com/a/9018647/1012053)을 참조하십시오. – dbenham