我在PowerShell中使用SQLCMD命令来运行SQL脚本。当我将输出传输到TXT时,格式化全部搞砸了。我想将结果导出到Excel文件。我怎么能这样做?
我的命令
Sqlcmd -Q 'select top 10 * from people' -S serverName -d testDB -o c:\output.txt | format-table
答案 0 :(得分:2)
使用sqlcmd.exe的列分隔符开关-s
。然后你可以使用excel的'Text to Columns',或者在知道列分隔符的情况下导入它。
-s col_separator
指定列分隔符。默认值为空格。此选项设置sqlcmd脚本编制变量SQLCMDCOLSEP。要使用对操作系统有特殊含义的字符,例如&符号(&)或分号(;),请将字符用引号(“)括起来。列分隔符可以是任何8位字符。
答案 1 :(得分:0)
您可以使用csv2xls工具
我在大约10年前在一家使用vb.NET工作的公司写过一篇文章,但现在肯定会有来自github或sourceforge的Open surce。
最终,如果您在使用PowerShell的同一台计算机上安装了Ms-Office,则可以使用它来打开生成的csv并将其另存为xls。
上的示例