我想将一个表从 SQL Server 2008 R2 导出到一个文件中。问题是我没有 bcp(我也无法安装它或其他任何东西)并且无法运行 xpcmdshell。如果没有这些权限/工具,任何人都对如何做到这一点有任何想法?(我希望最好在一些自动化的基础上发生这种情况)
4 回答
我通常使用从 SSMS 复制/粘贴Results Pane
到Excel
或者
您可以右键单击数据库中的Object Explorer
并选择Database->Tasks->Export Data
. 将打开一个SQL Server Import and Export Wizard
对话框,您将能够将数据从任何表或查询导出到文件或其他目的地。
或者
你可以使用LinqPad - 不需要安装的很棒的、简单的和免费的工具(我真的很喜欢它)
在结果窗格中,单击左上角的单元格以突出显示所有记录,然后右键单击左上角的单元格并单击“将结果另存为”。导出选项之一是 CSV。
你也可以使用这样的命令:
INSERT INTO OPENROWSET ('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=c:\Test.xls;','SELECT productid, price FROM dbo.product')
最后,您可以考虑使用 SSIS(替换 DTS)进行数据导出。这是教程的链接:http ://www.accelebrate.com/sql_training/ssis_2008_tutorial.htm
如果您有 SQL Server 2012,则可以将文件表添加到数据库中。因此,您可以使用 SQL 代理来安排一个简单的存储过程,以便在需要时更新文件表。
http://technet.microsoft.com/en-us/library/ff929144.aspx#Description
它有一个叫做“查询分析器”的东西
查询分析器 (isqlw.exe) 是 SQL 2000,SSMS 之前的查询工具。一个非常好的工具。除其他外,能够将查询结果导出到文件。请参阅https://stackoverflow.com/a/3769766/105929:
转到工具 -> 选项菜单。在结果选项卡上,选择将输出发送到 CSV 文件并选择“打印列标题”选项。