【问题标题】:Oracle.ManagedDataAccess with Oracle 8.1.7 DBOracle.ManagedDataAccess 与 Oracle 8.1.7 DB
【发布时间】:2015-02-17 05:29:21
【问题描述】:

是否可以将 Oracle.ManagedDataAccess 与 Oracle DB v.8.1.7 一起使用?我已经搜索了几个小时,但在任何地方都找不到明确的答案。

【问题讨论】:

    标签: .net oracle odp.net odp.net-managed


    【解决方案1】:

    没有。 ODP.NET 托管驱动程序仅支持回到 10.2 的数据库。由于它是一个相对较新的产品,因此没有旧版本可以依赖。

    问题在于网络协议会随着时间而变化,而 Oracle 承诺向后兼容两个主要版本。

    如果您必须使用 ODP.NET 和 Oracle 数据库 8.1.7,请考虑使用 ODP.NET 非托管驱动程序版本 10.2。它仍然在这里可用: http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html 当然,使用非常旧的 ODP.NET 版本也有其自身的局限性,例如缺乏 Entity Framework 支持等。

    【讨论】:

      【解决方案2】:

      我找不到任何明确的说法,但this page on Managed ODP.NET 上有一行写着:

      您还需要访问 Oracle 数据库 10g 第 2 版 (10.2) 或更高版本,...

      如果那只是为了演示,或者是对驱动程序的要求没有说。

      还有this page 说:

      每个 ODP.NET 客户端都支持连接到当前支持的任何 Oracle 数据库版本,例如 10g、11g 或 9i。这意味着您的 ODP.NET 11g(或 10g)客户端应用程序可以访问任何这些 Oracle 数据库版本。

      我建议试一试。

      【讨论】:

      • 我已经对此进行了测试,看来它确实适用于 10.2 或更高版本。尽管如此,早期版本并没有明确的“否”。不用说,在有点过时的环境中使用托管提供程序真的很棒,所以我渴望找到答案。
      • 如果你有那个环境,为什么不简单地测试一下呢?
      • 这样做了,没用。然而,有可能有一些技巧可以让它这样做。
      • @AlexeyOmelajenko:在 9i 上找到了另一个。我们越来越近了。
      • 到了我想不出对 app.config 进一步改进的地步,它在打开与 8.1.7 的连接时开始抛出 System.IndexOutOfRangeException,同时以相同的配置连接到 10.2 和 11仍然像魅力一样工作。 Trace 没有为此类行为的原因提供可识别的附加信息。
      猜你喜欢
      • 1970-01-01
      • 2015-10-12
      • 1970-01-01
      • 2016-01-02
      • 2018-07-01
      • 2010-10-01
      • 2016-03-04
      • 1970-01-01
      相关资源
      最近更新 更多