2017-07-26 95 views
0

目前我正在开发一个项目,我们刚刚将我们的Oracle版本从我们的测试服务器上的11g升级到12c,以及我的本地开发设置。使用不同版本的ODAC连接到Oracle

在我的本地安装升级后,我升级了我的ODAC(主要用于Oracle.DataAccess.dll)以使用12c 32位版本。在我终于可以重新连接数据库之前,我花了一些试验和错误,以及卸载和重新安装ODAC。

我们正在考虑更新测试服务器的ODAC。我昨天进行了安装,并喜欢我的本地,我无法连接数据库。

我已经将tnsnames.ora文件放入它的正确位置,并且此文件只是原件的副本。我使用了一个测试程序来确定我是否可以打开一个连接,我可以使用新的Oracle.DataAccess.dll。但是,当我尝试将其导入到主站点时,我们无法连接。即使我删除原始引用后,添加新文件指向Oracle.DataAccess.dll的位置。

我的一位同事提到,我们有什么版本的ODAC(11g或12c)并不重要,11g版本应该能够与12c DB连接,但仍然没有问题。我有点质疑这个问题,因为他在过去曾就其他问题发表过此类声明,以及他同意我们最初需要升级ODAC的事实。

这是一个真实的陈述吗?如果没有,我是否可以采取任何措施来解决未能卸载并重新安装的问题?它不应该采取那种努力,大声笑。

更新: 我确认我的同事是正确的,在12c Oracle DB上使用11g ODAC确实可行。但是,大声笑,他卸载之前,我可以进一步谈论它,所以是...

即使删除11g的ODAC后,我仍然发现类似的问题。我的同事还清理了有11g参考文献的注册表项目,但仍然存在问题。

UPDATE(2017年8月8日): 这个问题终于得到了解决。我安装的12c ODAC与我在服务器上使用的Visual Studio版本(VS 2012)不兼容。在查看了ODAC的要求后,我发现了这一点,并转而注意到了这一点。我们卸载了12c ODAC并重新安装了11g ODAC。现在一切正常。

我问VS是否升级,未来我们会有兼容版本。是的,这是不太可能发生,虽然,哈哈...

+0

那么这里有什么问题? – Prathyush

回答

0

该问题的答案是VS 2012与12c ODAC兼容。在重读了12c ODAC的规格说明之后,我发现我们的服务器上的Visual Studio版本未涵盖。我们有VS 2012,ODAC不会回到(至少对于我们的ODAC发布版本),因此这个问题。

找到这个之后,我们回到了11g ODAC,它仍然适用于12c DB。