Sql server 将数据从具有更改列的SQL Server表导出到文本文件

Sql server 将数据从具有更改列的SQL Server表导出到文本文件,sql-server,ssis,pivot,export,Sql Server,Ssis,Pivot,Export,我使用从变量传入的列创建了一个透视表。此变量是根据另一个表中的标志设置的,因此列的名称和数量可以按月更改。我需要能够导出这个轴到一个分隔的文本文件。数据透视表存储在临时数据透视表中 我曾尝试通过SSMS实现这一点,但我知道的唯一方法是定义一个需要设置列的文件连接管理器。我也尝试过通过sqlcmd,但它会导出额外的信息和空间 我对几乎任何允许我每月通过SQL代理作业来运行它的流程都持开放态度 任何帮助都将不胜感激。我认为您必须使用动态SQL-like-find。您可以使用SQL server导入和

我使用从变量传入的列创建了一个透视表。此变量是根据另一个表中的标志设置的,因此列的名称和数量可以按月更改。我需要能够导出这个轴到一个分隔的文本文件。数据透视表存储在临时数据透视表中

我曾尝试通过SSMS实现这一点,但我知道的唯一方法是定义一个需要设置列的文件连接管理器。我也尝试过通过sqlcmd,但它会导出额外的信息和空间

我对几乎任何允许我每月通过SQL代理作业来运行它的流程都持开放态度


任何帮助都将不胜感激。

我认为您必须使用动态SQL-like-find。

您可以使用SQL server导入和导出向导

右键单击数据库->任务->导出数据

映射数据透视表

单击“下一步”并设置源数据库,然后为SQL Server选择OLEDB提供程序

为文件设置文件名,例如d:\monthlyData\202006\MyFile.csv

选择选项将数据从一个表或视图复制到多个表或视图-由于列已更改,请勿使用此选项

选择“写入采石场”选项


您可以立即运行此程序,也可以另存为SSIS包,并使用SQL作业重新使用它

我需要能够每月自动运行导出。即使我保住了这份工作,我会遇到与在SSMS中定义连接相同的问题-它将被定义为当前的表,并且在有其他列时不会自动更改。@Islandz您可以将您的pviot表转换为另一个诱人的表,例如ExportTable和新表应包含一列,并且应具有分隔字符串数据,然后,您可以直接导出该表SQL作业的数据。XML输出是获取这些类型数据的理想方式,但这不是您的要求。@Islandz请尝试从数据透视表源中选择*。我已经有了数据透视表,包括动态获取列。我现在正在寻找的是如何在每月的计划中自动导出该轴心,而无需在每次运行时更改任何内容。