Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle 12.2客户端能否与11.2版本的Oracle.DataAccess.dll通信?_Oracle_Oracle11g_Oracle12c - Fatal编程技术网

Oracle 12.2客户端能否与11.2版本的Oracle.DataAccess.dll通信?

Oracle 12.2客户端能否与11.2版本的Oracle.DataAccess.dll通信?,oracle,oracle11g,oracle12c,Oracle,Oracle11g,Oracle12c,我们的应用程序是使用oracle 11g oracle.DataAccess.dll构建和打包的,在同一个框中,我们安装了12.2 oracle客户端(没有安装其他oracle客户端)。Oracle服务器正在12.2版本上运行 现在,当我们安装产品时,它正试图通过客户端与Oracle Server通信。但是我们产品的Oracle.DataAccess.dll(基本上是11g版本)无法与12.2 Oracle客户端通信 我们有没有办法成功沟通?我们不想将12.2 dll与安装程序打包并立即发布。请

我们的应用程序是使用oracle 11g oracle.DataAccess.dll构建和打包的,在同一个框中,我们安装了12.2 oracle客户端(没有安装其他oracle客户端)。Oracle服务器正在12.2版本上运行

现在,当我们安装产品时,它正试图通过客户端与Oracle Server通信。但是我们产品的Oracle.DataAccess.dll(基本上是11g版本)无法与12.2 Oracle客户端通信

我们有没有办法成功沟通?我们不想将12.2 dll与安装程序打包并立即发布。请建议是否有任何调整,可以使其兼容

谢谢,
Arindam。

否,Oracle客户端的版本和Oracle.DataAccess.dll的版本必须匹配。即使次要版本不同,您也可能会遇到问题,例如客户端版本
12.1.0.2.x
Oracle.DataAccess.dll
版本
12.1.0.1.x

但是,如果ODP.NET(即
Oracle.DataAccess.dll
)与Oracle客户端一起安装,这应该没有问题。GAC应包括以下政策:

Policy.4.112.Oracle.DataAccess.config ->

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
          <assemblyIdentity name="Oracle.DataAccess" publicKeyToken="89B483F429C47342"/>
            <bindingRedirect oldVersion="4.112.0.0-4.112.9999.9999" newVersion="4.122.1.0"/>
        </dependentAssembly>
      </assemblyBinding>
   </runtime>
</configuration> 
Policy.4.112.Oracle.DataAccess.config->


  • 并下载匹配的XCopy版本。从ZIP中提取正确的
    Oracle.DataAccess.dll
    文件,并将其与应用程序一起提供。

    您的意思是在一台计算机上安装了12.2版和11.2版吗?这可能是一个挑战,因为一些组件依赖于环境变量
    %PATH%
    ,这意味着“先到先得”。否。我已经安装了12.2 oracle客户端。但我的应用程序是基于.NET的应用程序,它是用11.2 Oracle.DataAccess.dll打包的。因此,此dll将与12.2客户端通信以更新oracle服务器。然后,请参阅我的答案,在您的计算机上,它应自动重定向到您的12.2版本的oracle.DataAccess.dll。但是,我的产品中的11.2 dll和当前的12.2 oracle data access dll将如何通信?我需要修改任何东西使其工作吗?我有一个配置文件:Policy.4.112.Oracle.DataAccess.config再次说明,您的产品不加载11.2 dll-它加载12.2版本(当然,如果已安装)