如何设置数据库名在SSIS变量?(How to set database name as a var

2019-09-17 02:37发布

在我当前的项目,数据库名称不断变化,我不希望修改我的OLE DB源各一次。 因此,我想将它设置为一个变量。 也就是说,在每一个OLE DB源,我可以把它作为一个参数。 然而,似乎SSIS不允许数据库名被转移作为参数。 所以,我应该怎么做,以尽量减少我的变化?

我希望做这样的事情在OLE DB源这条SQL语句:

Select OrderID
  From ?.Order

而我只需要当数据库名称更改为修改我的变量。 感谢您的任何解决方案!

Answer 1:

你需要包配置添加到您的包,并设置连接管理器的数据库名称作为配置之一

只要右击任意空白区域的控制流程,并选择“包配置”,然后按照向导。

我建议你开始使用XML配置,因为它更容易理解。



Answer 2:

一对夫妇为你的建议:

  • http://social.msdn.microsoft.com/Forums/en-us/sqlintegrationservices/thread/586bf0a7-16c1-4a24-a9b2-7b8fb0cffda9
  • http://social.msdn.microsoft.com/forums/en-US/sqlintegrationservices/thread/b72e1b45-9a78-4865-912a-4587fa72c7f7


Answer 3:

我喜欢在任务或适配器级别管理在连接管理服务器\ Instance.Database和Schema.Table或查看。 我建议外在连接管理器连接字符串。 您可以使用包配置要做到这一点,或者你可以管理它自己(我用的是表的connectionName和的ConnectionString列,并且加密的ConnectionString列)。 在我看来,一个SSIS包内的硬编码的数据库名称是不是最好的做法。

我最近记录SSIS连接管理几个交易日-一个是2005年,2008年和2008 R2 ; 另一个2012年 。 我也记录在会议中SSIS管理配置的 (虽然音频差)。

我希望这些帮助。

安迪



Answer 4:

检查出如何参数数据库名称这个了不起的职位。 这是一个非常彻底的博客帖子上的参数和环境在SSIS的话题。

http://www.sqlchick.com/entries/2015/1/4/parameterizing-connections-and-values-at-runtime-using-ssis-environment-variables



文章来源: How to set database name as a variable in SSIS?