如何通过包配置指定SSIS包数据库连接?

时间:2009-09-03 15:18:15

标签: sql-server-2005 oracle ssis database-connection

我有一个SQL 2005 SSIS包,它从Oracle数据库表中获取数据,并将其传输到SQL Server表。

我为Oracle连接设置了“Oracle Provider for OLE DB”,为SQL Server Connection设置了“SQL Native Client”。

Oracle和SQL连接将取决于开发和发货阶段,它们是:

  • 本地环境
  • SYS - 用于集成和系统测试
  • UAT - 用于用户验收测试
  • PRE - 模仿LIVE系统进行置信度测试
  • 直播 - 直播系统

在Connection Manager for Oracle中,它需要以下内容:

  • 服务器名称(例如,可以是DEVSERVER)
  • 用户名(例如,可以是devserver_user)
  • 密码(例如,可以是devserver_pass)

所以,我想知道如何对这些设置进行参数化,以便根据服务器选择设置。理想情况下,这将是一个存储在注册表中的连接字符串(与我们公司其他系统的体系结构具有共性)。

我试图通过包配置指定上述设置。我也尝试过指定连接字符串,它看起来像这样:

Provider=OraOLEDB.Oracle;Data Source=DEVSERVER;User ID=devserver_user;Password=devserver_pass;PLSQLRSet=1;OLE DB Services = -2;

我通过注册表设置,环境设置和XML配置文件尝试了这一点。我将这些项映射到连接对象上的属性,但设置似乎不成立。即当我打开连接对象时,这些设置不存在。

当我打开OLE DB源并指定连接时,会发生什么错误,因为连接对象没有拾取包配置中的项目。

是否有我遗漏的东西,我必须配置一些设置。我想我不确定我什么都没看到!

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

我自己就是这样做的。

这真的是RTFM的情况! MSDN Package Configurations页面上的第一段说明了一切:

  

通常,您创建一个包集   包对象上的属性   在包开发期间,然后   将配置添加到包中。

不过,我希望这对其他RTFMers仍有帮助!