首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从存储过程调用参数化SSIS包

从存储过程调用参数化SSIS包
EN

Stack Overflow用户
提问于 2016-09-19 18:48:18
回答 1查看 1.6K关注 0票数 0

我使用SP来调用SSIS包,我之前使用的是

EXEC msdb.dbo.sp_start_job

问题是,当我调用那个包时,我需要传递一个参数,但我不能这样做。示例如下:

代码语言:javascript
运行
复制
ALTER PROCEDURE [dbo].[Clawback]
      @Country      CHAR(2)
    , @StartDate        DATETIME
    , @EndDate      DATETIME
AS

BEGIN
    BEGIN TRY
        TRUNCATE TABLE [dbo].[ClawbackConfig]
        INSERT INTO [dbo].[ClawbackConfig] 
(
             Country
            ,StartDate
            ,EndDate
            ) VALUES (
                 @Country
                ,@StartDate
                ,@EndDate
                )

EXEC msdb.dbo.sp_start_job N'ExecuteJob'

此存储过程用于使用所需的日期和国家运行提取,这些值存储在一个表中,并在通常的增量过程中使用。

我想提一下,我们的想法是对增量+回拨使用相同的包,而增量流程需要国家参数。

因此,在包运行之前,我需要以某种方式将此过程中给出的@Country传递给包。该包存储在Integration Services SQL Server2008中,因此我无法使用catalog.create_execution或cmd。对此有什么想法吗?是使用C#的唯一解决方案吗?

非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-19 21:02:33

没有办法做到这一点。您可以从SSIS配置中读取(在调用的proc中,请参阅:

代码语言:javascript
运行
复制
http://blogs.lessthandot.com/index.php/datamgmt/dbprogramming/execute-ssis-from-sql/) 

或者将值存储到被调用的proc读取的表中,然后在proc中使用读取的变量。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39571306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档