0

我一直在使用带有 RazorSQL 的批处理文件来查询托管缓存数据库中的某些数据。我想使用相同的过程来收集缓存的当前备份时间。最大的区别是此数据存储在名称中带有百分号 % 的系统命名空间中。查询如下所示:

Select * from %sys.task where name like '%Backup%'

这适用于 RazorSQL。但是当我把它放在一个批处理文件中时,它会因为 % 符号而失败。批处理文件看起来像这样(这与我针对常规数据库名称成功使用的其他东西非常相似):

"C:\Reporting\Casecount\RazorSQL\jre\bin\java" -jar "C:\Reporting\Casecount\RazorSQL\razorsql.jar" -export "Tst_Bkup" "Select * from %sys.task where name like '%视觉%'" csv NO

当您在命令窗口中运行它时,您可以看到它解析出参数,但查询的参数如下所示:

args[2]: Select * from Vision'

它基本上从第一个 % 跳到第二个 %,并忽略其间的所有内容。对于普通的数据库名称,您会正确地看到此参数中的查询。我尝试过引号、双引号、方括号、感叹号等,但无法将 % 传递给参数。我不是贸易编码员,所以我在这里超出了我的深度。

4

0 回答 0