我有一台新的开发机器,我需要支持旧的 SSIS 包。新机器是 Windows 8 64 位,带有 SSD 主驱动器 (C:) 和用于数据的常规 HDD (D:)。在它上面,我安装了 BIDS 2008 R2(以及使它与 TFS2010 一起工作的所有技巧),以及 VS2010、ODAC 32 位和 64 位(我认为??)、Oracle 客户端(SQLDeveloper)。
我可以获得以下内容以很好地连接到 Oracle 数据库:
- VS2010 与 MSDAORA
- VS2010 带 ODAC
- VS2010 与 ADO.NET
- 使用带有 Oracle OLE DB 提供程序的 .udl 文件测试连接(MS 提供程序未在此处显示为选项)
- SQLDeveloper(Oracle 的客户端工具)
我似乎无法使用任何方法(MSDAORA、ADO.NET、ODAC)让 BIDS 2008 R2 连接到 Oracle。
这个问题似乎与我的机器无关,否则我可以在其他机器上打开、查看、验证、连接和运行这些包而没有问题。
我尝试了以下方法:
- 确保任何/所有 TNSNAMES 文件正确且相同(从其他机器获取工作副本,别忘了,这在 VS2010 中工作正常)
- 创建 ORACLE_HOME 和 TNS_ADMIN 环境变量并将它们指向 D:\app\username\product\11.2.0 中的各个目录
- 手动检查注册表以确保除了 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 中的条目之外没有其他对 ORACLE 的引用
- 未安装/重新安装的 SQL Server 2008 R2 组件
- 在我尝试过的每次搜索中,每个线程中提供的每个“解决方案”
- 向异教神灵投掷鸡骨头并献祭
每次尝试修复后,尝试在数据流中预览 SQL 命令时仍然出现以下错误:
OLE DB 记录可用。来源:“Microsoft OLE DB Provider for Oracle”Hresult:0x80004005 描述:“尝试检索错误 ORA-01019 的文本时出错”
是的,我知道我需要放弃 MSDAORA 以支持 ODAC,如果 ODAC 在 BIDS 2008 R2 中工作,我当然会这样做。但是,我在那里无法连接到 Oracle(尽管如上所述,它在各种其他工具中连接良好)
我在 D:\app\username\product\11.2.0 中有两个“client_n”目录。如前所述,我尝试将环境变量指向内部的各种路径。ORACLE_HOME 的正确路径似乎应该只是 D:\app\username\product\11.2.0,对吗?
有没有人在安装了 VS2010 的 WINDOWS 8 上让 BIDS 2008 R2 连接到 Oracle?在我看来,这是一个简单的 Oracle 连接问题,我只是对 Oracle 了解不足,无法进行故障排除。
还有其他想法可以尝试吗?