如何在批处理脚本中使用sqlcmd查询结果

时间:2019-01-15 20:41:29

标签: batch-file sqlcmd

我知道这与this SO question非常相似,但是我已经修改了脚本以执行我想做的事情,并且当我运行批处理文件时,它刚在进入公司后按Enter键就关闭了ID。

我需要检查批处理脚本运行时用户输入的公司ID是否有效。我在脚本的其他地方使用了用户输入的值,所以我确定这是正确的,但是我不明白为什么脚本不能按原样运行。

这是我的剧本:

@SETLOCAL ENABLEDELAYEDEXPANSION

@ECHO OFF

ECHO Enter the Company ID the data is for
SET /p _COMPANYID=Company ID: 

SET _INSTANCE=someinstance
SET _DATABASE=somedb

for /f %%a in (
    sqlcmd -b -S %_INSTANCE% -d %_DATABASE% -E -l 2 -Q "SET NOCOUNT ON; select count(*) from glb_companies where companyid = %_COMPANYID%"
) 
do set _RESULT=%%a
echo %_RESULT%
@pause

我尝试了带或不带单引号的sqlcmd行。我在sqlcmd中使用的开关是我在其他地方使用的开关,我也尝试过使用其他SO帖子中的开关。对我来说什么都没有。

0 个答案:

没有答案