2013-03-14 36 views
0

任何其他格式当我运行下面的命令:
sqlcmd -S server -U sa -P xxxxxxx -i d:clients.sql -o D:\clients.txt
但在文件我有影响,“1> 2> 3> 4> 5> 6> 7> 8×行>“和许多其他空间
我只会导致没有任何格式。
在sql文件中,我有一些选择。结果保存到txt文件,而不在SQLCMD

提前致谢。

+0

“1> 2> 3> 4> 5> 6> 7> 8>”在使用osql之前使用sqlcmd时隐藏 – Fara 2013-03-14 13:44:52

回答

1

您可以将SET NOCOUNT ON添加到您的脚本中remove the rows affected message并将-h-1添加到命令行以删除列名称和它们下面的行。这对我的作品,只返回行数据:

sqlcmd -E -i query.sql -o tmp.txt -h-1 

query.sql看起来是这样的:

set nocount on; 
select name from sys.objects; 

但我不知道在哪里1> 2> 3> 4> 5> 6> 7> 8>字符的来源。您可能想要发布一个提供该输出的SQL脚本的最小示例。

作为一般性评论,我个人不喜欢使用sqlcmd.exe来运行查询,因为很难控制输出。一些其他的事情要考虑的是:

  • 使用的Bcp.exe如果你想有一个分隔的文件
  • 使用PowerShell中,的Perl脚本或任何一种语言,你喜欢
  • 使用SSIS包
  • 把你的脚本内容到存储过程并执行它而不是使用输入文件