【发布时间】:2011-06-15 06:55:51
【问题描述】:
MySQL 有一个漂亮的命令SELECT ... INTO OUTFILE 可以将结果集写入文件(CSV 格式或其他一些可选格式)。
我目前正在使用 SQL Server Management Studio 查询 MS-SQL 后端服务器。我有多个 SQL 查询,想将输出结果集写入文件。有什么方法可以将查询结果直接存储到文件中?
【问题讨论】:
标签: sql sql-server sql-server-2008
MySQL 有一个漂亮的命令SELECT ... INTO OUTFILE 可以将结果集写入文件(CSV 格式或其他一些可选格式)。
我目前正在使用 SQL Server Management Studio 查询 MS-SQL 后端服务器。我有多个 SQL 查询,想将输出结果集写入文件。有什么方法可以将查询结果直接存储到文件中?
【问题讨论】:
标签: sql sql-server sql-server-2008
在 SSMS 中,“查询”菜单项...“结果到”...“结果到文件”
快捷键 = CTRL+shift+F
你也可以全局设置
“工具”...“选项”...“查询结果”...“SQL Server”..“默认目标”下拉菜单
编辑:评论后
在 SSMS 中,“查询”菜单项...“SQLCMD”模式
这允许您运行类似“命令行”的操作。
SSMS 2008 中的快速测试
:OUT c:\foo.txt
SELECT * FROM sys.objects
编辑,2012 年 9 月
:OUT c:\foo.txt
SET NOCOUNT ON;SELECT * FROM sys.objects
【讨论】:
GO。
在 SQL Management Studio 中,您可以:
右键单击结果集网格,选择“将结果另存为...”并保存。
在工具栏上切换“结果转文本”按钮。这将在每次查询运行时提示输入文件名。
如果需要自动化,请使用 bcp 工具。
【讨论】:
Copy direction must be either 'in', 'out' or 'format'。你介意给我一个简短的例子,说明如何使用来自文件的 SQL 查询来使用它吗?
bcp "SELECT Name, GroupName FROM HumanResources.Department" queryout c:\department.txt -c –T