Если выписка была неожиданной в это время

У меня есть партия с этим кодом:

set /p carga= ¿Carga inicial o carga diaria?

if "%carga%"=="c" (

    sqlcmd -Q "exec dbo.SP_OFB_INF_PSN @VALOR = 1, @FECHA=''" -S (local) -d bd_ofb -o OFB_INF_PSN_2.txt

)

но у меня есть эта ошибка

в это время было неожиданно

если я оставлю за пределами IF нет кода ошибки

sqlcmd -Q "exec dbo.SP_OFB_INF_PSN @VALOR = 1, @FECHA=''" -S (local) -d bd_ofb -o OFB_INF_PSN_2.txt

1 ответ

Вы можете избежать закрывающей скобки (с ^)), как предложил Стефан, или вы можете использовать отложенное расширение и установить свой оператор в переменную:

setlocal enableDelayedExpansion

set /p carga= ¿Carga inicial o carga diaria?

set "statement=sqlcmd -Q "exec dbo.SP_OFB_INF_PSN @VALOR = 1, @FECHA=''" -S (local) -d bd_ofb -o OFB_INF_PSN_2.txt"

if "%carga%"=="c" (
   !statement!
)
Другие вопросы по тегам