BATCH FILE:无法通过%变量%访问来显示变量值

时间:2013-07-10 14:40:44

标签: batch-file

我正在使用widows XP操作系统并且有批处理文件,我设置了几个变量值。 当我回应那些varibales我可以看到值,但当我在一些命令中使用它时,我得到空的sting作为它的值。

样本批处理文件

@ECHO OFF 
          SET "output=select * from employee where empid='160'"
          CALL SET output=%%output:'=''%%
          ECHO "%output%"
sqlcmd -b -h-1 -m-1 -V1 -S testsvr  -E  -Q "%output%' " -d tesdb

o / p select * from employee where empid ='''160''

并且sqlcmd命令中的变量值为空格。

2 个答案:

答案 0 :(得分:2)

我不确定,你想做什么。

@ECHO OFF
SET output=select * from employee where empid="160"
ECHO %output%
ECHO sqlcmd -b -h-1 -m-1 -V1 -S testsvr  -E  -Q '%output%' -d tesdb

..输出是:

select * from employee where empid="160"
sqlcmd -b -h-1 -m-1 -V1 -S testsvr  -E  -Q 'select * from employee where empid="160"' -d tesdb

答案 1 :(得分:1)

尝试按如下方式放置引号:

SET output="select * from employee where empid='160'"
sqlcmd -b -h-1 -m-1 -V1 -S testsvr  -E  -Q %output% -d tesdb