使用SSIS将数据从多个SQL表导出到同一个Excel文件中的多个工作表中

我已成功地使用SSIS在同一个Excel文件中生成多个Excel工作表,其中所有列都包含相同types的数据。 我能够实现这个使用这个链接的build议: https : //social.msdn.microsoft.com/Forums/en-US/6f4a5b98-6373-4f7e-8d03-0876d0b4b611/loading-data-from-multiple-tables- excel-using-ssis?forum = sqlintegrationservices,并在此链接中详细说明: https : //social.msdn.microsoft.com/Forums/en-US/2421d9aa-5347-4f24- a78b-da02eb644f5f /出口-SQL服务器表-到-多张合的Excel?论坛= sqlintegrationservices

对于我正在处理的新项目,我试图将具有不同列和数据的多个SQL表中的数据导出到同一个Excel工作簿中的多个工作表中。 由于每个表的数据都不相同,因此上例中的数据stream任务似乎不是dynamic的,以允许更改列和数据转换。

我知道这是可能的使用SQL Server导入和导出向导,但我正在看超过200个表。 而是使用SELECT TABLE_NAME FROM information_schema.tables查询将所需的表名传递给SSIS中的对象variables。 也许有一个脚本可以处理这个问题。 我是SSIS的新手,尽pipe多年来一直没有使用VB,但我愿意用它或其他方法来达到这个目的。

我错过了什么吗? 这个过程在SSIS中是可行的吗?

以简单的方式做到这一点是相当困难的。 如果你在表中有不同的列,你希望有多个不同的数据stream任务。 您可以使用BIML(例如C#)“dynamic地”创build程序包 – 请阅读更多信息: https ://www.mssqltips.com/sqlservertip/3124/generate-multiple-ssis-packages-using-biml-and-metadata/请考虑使用Management Studio中的导入/导出向导(稍后可以将其保存到SSIS包中并重新使用)。