[英]Correct Output to File When Using SQLCMD
我一直在使用SQLCMD将.SQL结果输出到文件。 它正在工作,但实际的SQL语句也显示在输出文件中,我显然不希望这样做。 我正在使用.bat文件运行SQL文件。 以下命令是我的.bat文件中的命令:
SQLCMD -S MyServerName -d MyDBName -i C:\test\start.SQL -o C:\test\out.txt -e
在我的start.SQL中,我具有以下内容:
set nocount on
SELECT '<HEADER>', getDate(), '<HHEADER>'
SELECT UPPER(ACCTNUM),
CONVERT(VARCHAR(10),DATEEXP,126),
UPPER(OPERID),
CONVERT(VARCHAR,CREATE_TMSTMP,120)
FROM RETURNS
WHERE CREATE_TMSTMP < getDate()
AND CREATE_TMSTMP > getDate() - 1
SELECT '<TRAILER>', getDate(), '<HHEADER>'
set nocount off
在输出文件中显示了正确的信息,但是它有点破折号,甚至还显示了已执行的SQL命令。 有什么办法可以解决此问题。 我在这里做错什么了吗? 任何帮助将不胜感激。
为什么使用-e选项?
-e将输入脚本写入标准输出设备(stdout)。
破折号是标题的一部分。 使用-h-1指定没有标题。 如果那是不可接受的,请使用FINDSTR / B / V“ ----”之类的东西来排除该标题行...假设您要保留的所有行都不以破折号开头。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.