0

我有一个包,它将使用执行包任务执行 7 个包。这 7 个包以保护级别保存为“使用密码加密所有数据”。

在配置执行包任务时,我选择了位置作为“文件系统”。每天我都需要手动运行这个包。但问题是每次我想执行它时,我都需要为所有 7 个包提供密码。通常我在午餐时间运行这个包。

无论如何我可以以编程方式存储包密码吗?如果我昨天运行它并且我没有关闭 BIDS 而我今天再次运行它,这将不会要求输入密码。

我还尝试在第一次运行后构建包,它没有要求输入密码。然后我再次运行它而不关闭投标。但这仍然行不通。

4

1 回答 1

3

即使你存储了SSIS,在你使用执行它package passwords的时候也会一直提示你输入密码。BIDS这是因为 BIDS 试图打开个人child package designer并因此提示您输入密码。

所以唯一的方法是在没有dialogue promptfor的情况下执行它password是使用sql agentdtexec utility

1.为了执行子包,我建议你为父包创建一个配置文件,并Package Password为你所有的包选择属性Execute Package Task

在此处输入图像描述

2.现在在配置文件中输入所有个人的密码execute package task

<Configuration ConfiguredType="Property" Path="\Package\Execute Package Task.Properties[PackagePassword]" ValueType="String">
    <ConfiguredValue>Password</ConfiguredValue>
</Configuration>

3.执行你的包使用dtexec utility

dtexec.exe /f "PackageLocation/Parent.dtsx"
于 2013-03-13T09:25:14.883 回答