【问题标题】:How to use SQL outfile command correctly?如何正确使用 SQL outfile 命令?
【发布时间】:2013-12-14 18:14:05
【问题描述】:

到目前为止,我找不到答案。我想要做的是将我的 sql 表输出到 .txt 文件或 csv 中。 (如果可能,txt)

我尝试的是:

SELECT * FROM [mydb] INTO OUTFILE 'd:\scripts\powershell\123.txt';

回报是:

Incorrect syntax near the keyword 'INTO'.

我还尝试只选择一些列。还尝试先创建文本文件...

我使用 SQL-Server-2012

【问题讨论】:

  • 那是哪个 DBMS?
  • SQL Server 中没有这样的命令。可以做到这一点的工具包括 BCP、SSIS 和 SQLCMD。
  • 使用 sql server 导入/导出向导

标签: database tsql powershell sql-server-2012 file-io


【解决方案1】:

右击你的数据库

DataBase --> Right Click --> Tasks --> ExportData

Sql Server Import/Export Wizard 将打开。提供所有信息,如 DataSource 、 ServerName 和 Databases Name 、 Table Name ,单击 Next 然后提供有关目标的所有信息。

【讨论】:

  • 不知道任何可以将数据导出到外部文件的 t-sql。
【解决方案2】:

最好的选择是带有查询源的 SSIS 导入/导出向导,最快、最简单的方法在 Muhammed Ali 的回答中有所描述。

但如果这不是一个选项,理论上你可以通过将 xp_cmdshell 与 SQLCMD 结合来实现这一点,尽管我自己没有尝试过。

您可以在 xp_cmdshell here 上找到信息,Pinal Dave 有一篇优秀的文章描述了您在管理命令提示符下尝试使用 SQLCMD 的内容,您可以阅读它here

你最终可能会得到类似这样的东西:

EXEC master..xp_cmdshell 'SQLCMD -S YourSQLServer -d YourDatabase -U 你的用户名 -P 你的密码 -Q “你的查询” -s “,” -o “C:*Yourfilename*.csv”', no_output

如果我这个周末有机会,我会玩一玩,然后回来扩展这个答案,如果运气不好,我希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-21
    相关资源
    最近更新 更多