代码之家  ›  专栏  ›  技术社区  ›  Tim Fountain

使用sqlcmd.exe导出csv数据

  •  11
  • Tim Fountain  · 技术社区  · 15 年前

    我正在尝试将数据从SQL Server导出为csv格式。我有一个BAT任务要做,它定期运行。命令是:

    SQLCMD.EXE -d [db details] -i c:\export.sql -o c:\export.csv -s"," -W 
    

    SQL文件只是一个视图中的select*。

    除了数据中的一些行有逗号外,这是有效的,因此需要对值进行引用。我可以将列分隔符改为“'、'”,但随后我还需要使用SQL Server来转义数据中的单引号。

    不幸的是,在100%的情况下,将分隔符更改为另一个字符不太可能解决此问题,因为其中一个字段包含来自另一个应用程序的序列化数据,该应用程序包含各种奇怪和奇妙的字符。

    我有没有办法获得标准的引用csv数据?

    1 回复  |  直到 15 年前
        1
  •  11
  •   Joe Stefanelli    15 年前

    QUOTENAME SELECT *

    SELECT QUOTENAME(Column1, '"'), QUOTENAME(Column2, '"')
        FROM YourView