4
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Oracle DBとODACのバージョン互換性

Last updated at Posted at 2020-03-13

#この記事の目的
経験的にODACに後方互換性があることは知っていたのですが、具体的にどのバージョンのODACがどのバージョンのOracle DBに接続可能かを、公式ドキュメントをベースにまとめてみたところ、意外と面白い知見が得られたので共有したいと思います。(2020/3/11現在)。

##ODACの各バージョンと接続可能なOracle DBの関係

名称 ODAC Ver 別名 32/64bit 対応OS .NET Framework要件 接続可能DB
ODAC 19c Release 1 19.3.0.0.0 ODAC 19c 32/64 x64: 10, 8.1, 2019, 2016, 2012R2 ※.NET Framework 3.5 SP 1 or later up to .NET Framework 4.8 Oracle Database 11g Release 2 (11.2.0.4) or later
ODAC 18c Release 1 18.3.0.0.0 ODAC18c
ODAC 18.3
32/64 x64: 10, 8.1, 7, 2016, 2012R2, 2012 ※.NET Framework 3.5 SP 1 or later up to .NET Framework 4.7.x Oracle Database Server (Oracle 11g Release 2 or later)
ODAC 12.2c Release 1 12.2.0.1.0 ODAC 12.2 32/64 x64: 10, 8.1, 8, 7, 2016, 2012R2, 2012 ※.NET Framework 3.5 SP 1 or later up to .NET Framework 4.7 Access to an Oracle Database Server (Oracle 10g Release 2 or later)
ODAC 12c Release 4 12.1.0.2.4 ODAC 12.1 32/64 32bit: 10, 8.1, 8, 7, 2008 
x64: 10, 8.1, 8, 7, 2012, 2012R2, 2008R2, 2008
※.NET Framework 3.5 SP 1 or later up to .NET Framework 4.6 Access to an Oracle Database Server (Oracle 10g Release 2 or later)
ODAC (11.2.0.3.0) 11.2.0.3.0 ODAC 11.2 32/64 32bit: 7, 2008, Vista, 2003, 2003R2, XP 
x64: 7, 2008R2, 2008, Vista, 2003, 2003R2, XP
.NET Framework 4, including support for Entity Framework 4, 4.1, and 4.2. Access to an Oracle Database Server (Oracle 9i Release 2 or later)

OSの略称は以下の通り
7: Windows 7, Vista: Windows Vista, 2008: Windows Server 2008, 2008R2: Windows Server 2008 R2, XP: Windows XP, 2003: Windows Server 2003, 2003R2: Windows Server 2003 R2 8: Windows 8, 8.1: Windows 8.1, 10: Windows 10, 2012: Windows Server 2012, 2012R2: Windows Server 2012 R2, 2016: Windows Server 2016, 2019: Windows Server 2019
※ODP.NET Unmanageed Driverに関してのみ記載

##この表から読み取れること
まとめてみると、後方互換ではなく前方互換(!)に対応していました。とりあえず、ODACが動いていればDBサーバーが更改されていてもつながるということが分かりました。
ただし、インストール可能なOSや対応する.NET Frameworkによって使えなくなるODACのバージョンが存在します(上の例では 11g)。したがって、初めの段階でどのODACをインストールすべきかは、インストールするOSのバージョンとインストールされている.NET Frameworkのバージョンを確認したうえで決定する必要がでてきます。

Windows 10の場合、特別な事情でOS自体の更新を止めていない場合、半期チャネルでOSが更新されますし、Windows Updateで.NET Frameworkの更新が配布される場合もあります。10 May 2019 Updateで.NET Framework 4.8が配布されているWIndows 10 PCが多いと思いますが(この記事を書いた時点では)、上記の表に従うとODAC 19cをインストールする必要があることになります。

19c以前のODACを利用した場合、(可能性は低いですが)思わぬ機能を用いた際にエラーが発生する可能性があるということだと読み取れるので、インストールの際には注意しましょう。

蛇足になりますが、Windows Updateなどで勝手に.NET Frameworkが上がってしまった場合など、ODACの再インストールをする必要がある場合は、アンインストール後にレジストリと環境変数からOracleに関連するものを削除してからの方がよいと思われます。
###出典
ODAC
https://www.oracle.com/technetwork/topics/dotnet/downloads/install193-5838973.html
https://www.oracle.com/technetwork/topics/dotnet/downloads/install183-5191071.html
https://www.oracle.com/database/technologies/install-odac-12c-122010.html
https://www.oracle.com/database/technologies/install-odac-12c-121024.html
https://www.oracle.com/technetwork/topics/dotnet/downloads/install112030-1440546.html

.NET Framework バージョン及び依存関係
https://docs.microsoft.com/ja-jp/dotnet/framework/migration-guide/versions-and-dependencies

4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?