use*_*795 9 sql-server oledb ado.net ssis
我有一个Master包,我在使用Execute包任务调用几个包.
子包和主包都没有任何配置,并且在连接管理器中使用硬编码的SQL身份验证连接连接OLEDB(SQL Server).
此外,软件包还使用密码加密敏感.
看到奇怪的行为:1.子程序包在从BIDS运行时成功运行但在从具有"获取连接"失败的主程序包运行时失败
"对连接管理器的AcquireConnection方法调用失败,错误代码为0xC0202009"
有人可以帮忙解决这个问题吗?
您的子包似乎没有从父包获取连接字符串。您需要将连接字符串从父包传递到子包。
检查这篇文章
更新 :-
当您将EncryptSensitiveWithPassword作为子包和父包的访问控制时,然后在从父包执行子包时
在执行过程中,系统将提示您输入子包的密码。
可能存在这样的情况:即使在运行时输入密码后,子 pkg 执行也会由于获取连接错误而失败。这可能会发生(我不确定),因为子连接字符串(在执行包任务中)可能仍然指向修改后尚未重建的旧子包。
我的建议是,当您将 a 拖到Execute SQL Task控制流上时,使用文件系统位置并指向放置在 bin 文件夹(或您的部署路径)中的更新的子包,然后在任务中输入子包的密码

为了从集成服务(MSDB)运行父包,您需要了解如何在运行时执行时传递子解密密钥。
编辑:第 1 步:为父 SSIS 包创建包配置。Execute Package Task有一个属性PackagePassword。您需要在创建配置文件时选择该属性
Executables->ExecutePackageTask->PackagePassword
Run Code Online (Sandbox Code Playgroud)

步骤 2:创建 XML 文件后,将其打开并搜索ConfiguredType=property,然后在配置的值中输入子包的密码

步骤3:在MSDB中导入父包后,在配置选项卡中选择配置文件

| 归档时间: |
|
| 查看次数: |
2046 次 |
| 最近记录: |