首页 > 解决方案 > 是否可以保留标题但使用 sqlcmd 删除 sql 输出的连字符

问题描述

客观的:

通过使用 sqlcmd 执行 sql 查询时,我能够删除连字符

|findstr /v /c:"---"

然而,问题是我不能将上面的代码与我的“-o”变量结合起来:

sqlcmd -S INSTANCENAME -s ";" -Q "SET NOCOUNT ON; SELECT top 5 * FROM table" |findstr /v /c:"---" -o output.csv

错误信息:

FINDSTR:无法打开 output.csv

注意:我需要保留我的标题。

标签: sqlsql-servercmdsqlcmd

解决方案


好吧,该findstr命令没有-o创建输出文件的选项。但是,您可以使用输出重定向将结果写入文件,如下所示:

sqlcmd -S INSTANCENAME -s ";" -Q "SET NOCOUNT ON; SELECT top 5 * FROM table" | findstr /V /C:"---" > "output.csv"

output.csv请注意,如果文件已经存在,这将覆盖该文件,恕不另行通知。要附加到输出文件而不是覆盖它,只需替换>>>.


推荐阅读