Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在哪里可以找到将从存储过程创建文件(Excel、txt、csv)的模板SSIS包_C#_Sql Server_Templates_Ssis - Fatal编程技术网

C# 在哪里可以找到将从存储过程创建文件(Excel、txt、csv)的模板SSIS包

C# 在哪里可以找到将从存储过程创建文件(Excel、txt、csv)的模板SSIS包,c#,sql-server,templates,ssis,C#,Sql Server,Templates,Ssis,我需要生成和交付具有不同扩展名的文件,例如:.xlsx、.txt、.csv 我不擅长c#,但我假设有一个带有脚本任务的SSIS包,您只需更改变量名,如扩展名,存储过程名称等,它将动态创建任何扩展名的文件,并将该SP的输出插入该文件 有没有人遇到过类似的SSIS包模板 谢谢因为SSIS数据流是如何工作的,所以您要查找的内容将不存在。元数据(关于类型、列数等的数据)与SSIS包的设计时体验紧密绑定。试图在运行时更改它将导致验证错误(VS_NEEDSNEWMETADATA) 即使可以让更改的元数据工作

我需要生成和交付具有不同扩展名的文件,例如:.xlsx、.txt、.csv

我不擅长c#,但我假设有一个带有脚本任务的SSIS包,您只需更改变量名,如
扩展名
存储过程名称
等,它将动态创建任何扩展名的文件,并将该SP的输出插入该文件

有没有人遇到过类似的SSIS包模板


谢谢

因为SSIS数据流是如何工作的,所以您要查找的内容将不存在。元数据(关于类型、列数等的数据)与SSIS包的设计时体验紧密绑定。试图在运行时更改它将导致验证错误(VS_NEEDSNEWMETADATA)

即使可以让更改的元数据工作,输出也会成为下一个问题。您可以在运行时更改文件名、目标表名或任何其他内容。但你不能改变的是目标本身。我不能让一个包修改自身以发送到平面文件,在下一次运行中,翻转一个标志,现在我们生成一个Excel文件

如果您有编码技能,可以根据元数据动态创建包,然后自行运行,但由于COM和.NET对象的混合,这不是一项有趣的任务


如果是我的话,我会看着一个像这样的人。使用您必须的元数据构建一个包,该包处理所有可能的排列(从源查询到Excel、平面文件、CSV等)。一旦确定了模式,就可以为所有可能的源查询创建一个包。然后,您将问题归结为编排—我应该运行哪个包?

使用SQL Server()的命令行工具。我建议使用SQLCMD.exe。您可以将其放入bat文件并运行bat。powershell具有调用SQLCMD.exe的内置方法