Parameters 如何在SSIS 2012中自动设置SSIS项目参数?

Parameters 如何在SSIS 2012中自动设置SSIS项目参数?,parameters,ssis,project,Parameters,Ssis,Project,我找到了显示参数的catalog.object\u parameters视图,但缺少创建环境(我宁愿避免创建环境),我想找到一种方法,在项目级别通过存储过程调用复制“Configure”对话框。我似乎找不到符合要求的“目录”存储过程 有人把这个坚果打碎了吗?如何在部署(而不是执行)时设置项目级参数?这些资源是值得的 您是否希望设置项目级参数。希望这对你有帮助 就像在图中一样,我们可以添加项目级参数 可以在左侧窗格中添加参数 同样,在运行时,我们可以使用SSIS存储过程“catalog.se

我找到了显示参数的catalog.object\u parameters视图,但缺少创建环境(我宁愿避免创建环境),我想找到一种方法,在项目级别通过存储过程调用复制“Configure”对话框。我似乎找不到符合要求的“目录”存储过程


有人把这个坚果打碎了吗?如何在部署(而不是执行)时设置项目级参数?

这些资源是值得的


您是否希望设置项目级参数。希望这对你有帮助

就像在图中一样,我们可以添加项目级参数

  • 可以在左侧窗格中添加参数
  • 同样,在运行时,我们可以使用SSIS存储过程“catalog.set_object_parameter_value”将值传递给此参数


    如果右键单击部署在SSIS目录中的SSIS包,则可以选择“配置…”。在参数选项卡中,您也可以覆盖默认值。

    对于项目变量:

    例: 使用SSIDB 去 声明@var sql\u variant=N'datasource=database connection'

    EXEC[SSIDB].[catalog].[set_object_parameter_value]@object_type=20、@parameter_name=N'ParameterName'、@project_name=N'FolderName', @文件夹\u name=N'FolderName',@value\u type=V,@parameter\u value=@var 去

    对于包变量:

    例: 声明@var sql\u variant=N'D:\FileName.TXT'

    EXEC[SSISDB].[catalog].[set_object_parameter_value]@object_type=30,@parameter_name=N'ParameterName' ,@object\u name=N'packageName',@folder\u name=N'FolderName' ,@project\u name=N'FolderName',@value\u type=V,@parameter\u value=@var
    去吧我在寻找一种更快的方法自己去做

    简言之,我手动更改了Integrations Services目录上部署的项目的“配置”菜单中的所有连接管理器和项目参数,在保存之前,我单击了“脚本到”按钮,它创建了一系列插入更新脚本,看起来就像更新旧的ssis_配置表一样。然后,我编写了一个powershell脚本,重新配置参数值,即每个环境等。在我的例子中,我的开发项目正在查看某个模式,当在prod中查看其他模式时,在dev中,我限制了可执行文件的数量,但在prod中,我让em拥有它。这很容易在powershell中设置为变量,然后在设置配置中创建更改SQL脚本(SqlCMD)脚本也会很好地工作

    简单地说,您可以使用名为

    [SSIS].[catalog].[set_object_parameter_value]
    
    你需要知道这些参数

    @object_type = 20,
    @parameter_name = N'your parameter by name',
    @object_name = N'the ssis project name for a project param package for other',
    @folder_name = N'the folder the project is in SSISDB',
    @project_name = N'project name again'
    @value_type = V -- not sure what this is for,
    @parameter_value = N'YOUR NEW VALUE!!'
    

    要回答答案中包含的问题,@Value_Type参数可以是 V代表价值 R表示相对

    作为使用环境进行处理设置的一部分,需要将项目参数设置为相对,并为提供其值的环境变量的名称指定一个值。很明显,环境变量名应该与项目参数名IMO相同

    环境是您应该用来设置执行参数的机制,它在生产环境中工作起来要简单得多。
    (我希望有一天我会写一篇合适的文章。)

    谢谢。我知道如何在VisualStudio项目中创建项目参数。我有一个将SSIS项目部署到SSIS服务器的自动化过程。我知道如何通过“配置”对话框配置项目参数。我要寻找的是一种脚本设置参数值的方法。我需要完全自动化部署过程,这样DBA就不必打开配置对话框。有列出项目参数的“目录”SP,但唯一设置参数的是“环境”参数……我看到了在执行时设置参数的SP,但没有设置对象参数值。谢谢,这就是我想要的。这基本上就是我实现的。每个环境(QA、Prod)的属性文件,带有key:value对(参数名称:value),我解析并使用它生成SQL脚本,运行该脚本为该环境设置参数。这允许我将属性文件检查到Subversion中,并使它们与SSIS项目的版本、项目参数等一起跟踪。仅供参考,如果您使用环境变量,请使用value_type=R,并在参数_value中指定环境变量的名称。