通过查询导出大型SQL数据库

时间:2018-06-13 21:13:23

标签: sql sql-server database export-to-excel export-to-csv

我正在尝试在Microsoft SQL Server Management Studio 2000中导出数据库。我的数据库非常庞大,有超过1,300个唯一表。

我知道导出向导和复制/粘贴选项,但我正在寻找能够将所有1,300个表(或一次至少几百个)导出到单个csv或xls文件中的内容。复制并粘贴或选择"另存为"对于每个表将花费太长时间,导出向导一次只允许几十个表。

2 个答案:

答案 0 :(得分:1)

好吧,我不建议你这样做,但是如果你急需一个你所描述的解决方案,那就是:

首先,在数据库上运行此查询:

    SELECT 'sqlcmd -S . -d '+DB_NAME()+' -E -s, -W -Q "
    SET NOCOUNT ON;
    SELECT * FROM '+table_schema+'.'+TABLE_name+'" > "C:\Temp\'+Table_Name+'.csv"' 
    FROM [INFORMATION_SCHEMA].[TABLES]

您可能希望根据自己的方便更改文件夹名称

其次,将返回的所有行复制到Export.batExport.cmd文件

第三,运行Export.bat文件,在单独的CSV文件中获得1300个奇数表

首先,打开一个cmd窗口,导航到您的文件所在的文件夹,然后使用以下命令:

copy *.csv Export.csv

您将拥有一个包含所有表的Export.csv文件,以及每个表的标题

答案 1 :(得分:0)