【问题标题】:how to pass string parameter to SSIS package when executed with SQLCMD使用 SQLCMD 执行时如何将字符串参数传递给 SSIS 包
【发布时间】:2021-06-30 21:02:31
【问题描述】:

我有一个必需的字符串项目变量

我需要创建命令行来从 Jenkins 执行这个包。这不起作用,显示错误消息:

输入值的数据类型与数据类型不兼容 '字符串'。

    SQLCMD -S "uat-sql" -Q "Declare @execution_id bigint EXEC [SSISDB].[catalog].[create_execution] 
@package_name=N'xx.dtsx', @execution_id=@execution_id OUTPUT, @folder_name=N'xx',@project_name=N'xx', use32bitruntime=True, @reference_id=Null 
exec [SSISDB].[catalog].[set_execution_parameter_value] @execution_id, @object_type=20, @parameter_name=N'RunType', @parameter_value='regular'
EXEC [SSISDB].[catalog].[start_execution] @execution_id

【问题讨论】:

    标签: ssis sqlcmd


    【解决方案1】:

    解决方案很简单,您必须改用 nvarchar。

    SQLCMD -S "uat-sql" -Q "Declare @execution_id bigint EXEC [SSISDB].[catalog].[create_execution] 
    @package_name=N'xx.dtsx', @execution_id=@execution_id OUTPUT, @folder_name=N'xx',@project_name=N'xx', use32bitruntime=True, @reference_id=Null 
    exec [SSISDB].[catalog].[set_execution_parameter_value] @execution_id, @object_type=20, @parameter_name=N'RunType', @parameter_value=**N'regular'**
    EXEC [SSISDB].[catalog].[start_execution] @execution_id
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-29
      • 2010-09-14
      相关资源
      最近更新 更多