有没有办法在局部变量中检索sql查询的结果集?查询将在批处理文件中运行。我想做的是这样的:
set varname = osql -S%dstserver% -d%dstDB% -Q"SELECT name from table_name where Id = %siteId%" %osqluser% -b
varname 是我的局部变量。
我是 sql 的新手,所以非常感谢任何帮助1
最佳答案
将结果写入文件,然后读取文件。在您的情况下,您需要阅读第一行(并且可能 trim
它)。
将以下参数添加到您的查询中:
osql -S%dstserver% -d%dstDB% -Q"SET NOCOUNT ON;SELECT name from table_name where Id = %siteId%" %osqluser% -b -w 9999 -h-1 -o tempres.txt
- -o ...:输出文件(稍后需要阅读)
- -h-1: 禁用标题
- -w 9999:当您的
name
长度超过默认的 80 个字符时,确保它能正确处理情况 SET NOCOUNT ON;
在实际查询之前禁用状态字符串,如(1 row affected)
关于sql - 如何在批处理文件中将局部变量设置为sql查询的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2324780/