将MSSQL数据导出到csv文件

时间:2017-02-08 15:05:54

标签: sql-server excel csv powerpivot

我跟着Export table from database to csv file并使用了这个命令行:

sqlcmd -S . -d DataBase -E -s, -W -u -Q "SELECT * FROM Table" > C:/Table.csv

但该文件的第二个用于将第一行的列名称分隔为第三行的数据:

-----------,------,-------,--------,------,------,------,-------,--------,---------,--------,---------,---------,----------

我的目标是在Excel PowerPivot上导入此文件,并且无法告诉它必须忽略第二行。

有没有办法让MSSQL不打印这个分隔符行,或者至少让PowerPivot忽略它?

更新,我能够使用命令

导出数据
sqlcmd -S . -d APP_BI -E -s, -W -u -Q "SELECT * FROM DB.dbo.Table" | findstr /V /C:"-" /B > C:\Table.csv

从cmd.exe执行。但是当我将它添加到cmd文件,或直接从MSSQL代理执行它时,我收到错误消息Sqlcmd: '| findstr': Unexpected argument. Enter '-?' for help.。因此,管道在cmd文件或MSSQL代理中不起作用,他们认为它是sqlcmd的参数。

这导致我开始,我需要一种方法来生成没有该行的csv。

0 个答案:

没有答案