繁体   English   中英

使用SQLCMD时正确输出到文件

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM