如何在SSIS包中使服务器名称动态化

Cra*_* HB 6 ssis

我有许多SSIS包都连接到同一个数据库.我不想将服务器名称硬编码到每个数据库的数据库连接中,因为它与开发服务器不同.这些服务器名称可能会随着时间而改变.

我知道您可以将它放在配置文件中,但所有这些SSIS包都存储在SQL Server 2008中,我想保留SQL Server中的所有详细信息.

有没有人有任何建议或意见?

我正在考虑创建一个名为GetServerName的包,它返回服务器名称,我可以使用它来更改每个包中的连接.但可能有更好的方法.

小智 7

SSIS中用于解决您的问题的一个非常好的功能称为包配置.许多人对如何存储动态服务器/包属性/变量值 - 配置文件,环境变量,sql server或注册表项有不同的看法和/或想法.我个人喜欢在SQL Server中存储所有信息,这是你想要做的.若要实现此目的,请按照本文中的步骤操作:程序包配置步骤


Raj*_*ore 1

我发现配置文件是解决此问题的一种非常方便的方法。

如果您计划从 SQL Server 代理执行包,则可以从文件路径指定要使用的配置文件,这通常可以满足我的所有参数要求。

如果要将结果保留在 SQL Server 中,可以将它们存储在表中并检索它们。但现在你必须知道开发/测试/生产要针对哪个服务器/表,然后你又回到了原来的问题。

我的建议:在所有服务器(开发/测试/生产)上的相同物理位置有一个配置文件,并使作业指向适当的参数配置文件。