随感録 2017年7月

2017-07-05 (Wed)

Visual Studio 2017 と Oracle (ODAC) を組み合わせる

今現在、Visual Studio 2017 で動く Oracle Developer Tools (ODT) for Visual Studio がリリースされていない。2015用はVS2017で動かない。

各所でもだいぶ困っている;

ODAC

いろいろ試したが, やはり ODT を動かすことはできなかった。とりあえず ODAC で逃げるしかない。

Oracle Data Access Components (ODAC) は次からなる。ODP.NET がこちらに含まれるため、Instant Client だけでは不十分。

  • Oracle Developer Tools for Visual Studio 12.1.0.2.4
  • Oracle Data Provider for .NET 4 12.1.0.2.0
  • Oracle Data Provider for .NET 2.0 12.1.0.2.0
  • Oracle Providers for ASP.NET 4 12.1.0.2.0
  • Oracle Providers for ASP.NET 2.0 12.1.0.2.0
  • Oracle Database Extensions for .NET 4 12.1.0.2.0 -- for upgrade only
  • Oracle Database Extensions for .NET 2.0 12.1.0.2.0 -- for upgrade only
  • Oracle Provider for OLE DB 12.1.0.2.0
  • Oracle Services for Microsoft Transaction Server 12.1.0.2.0
  • Oracle ODBC Driver 12.1.0.2.0
  • Oracle SQL*Plus 12.1.0.2.0
  • Oracle Instant Client 12.1.0.2.0

入手先はこちら; Oracle .NET Software Downloads

いくつか種類がある。Xcopy 版と NuGet 版はバージョン 12.2c Release 1 が最新。

  • ODAC Xcopy 版では ODBCドライバのインストール方法が分からなかった. 環境変数で tnsnames.ora ファイルの場所を指定するのも、私の環境ではうまく動かなかった。
  • NuGet版は、特定のプロジェクトと紐付けになる。

ということで、結局, 32-bit ODAC with Oracle Developer Tools for Visual Studio の Oracle Universal Installer 版がよい。今日現在の最新版は 12c Release 4. やや古いが、やむをえない。

インストールでコンポーネントを選ぶ際、ODT for VS を除外してインストールすればいい。

Visual Studio のサーバエクスプローラの「データ接続」>接続の追加,「データソースの選択」で、ODBC経由, .NET Framework Oracle用データプロバイダの両方が使える。

[制限事項] ODT をインストールしていないと, サーバエクスプローラで, ネイティブのデータプロバイダが使えない。プロジェクトの参照から Oracle.DataAccess なり Oracle.DataAccess.EntityFramework を追加してやれば、プロジェクトからは ODP.NET が使えるが。

Oracle SQL Developer

そうはいっても、Visual Studio との統合がないので、別途ツールが必要。とりあえず Oracle SQL Developer 辺りか。(試してない)

出典 http://www.oracle.com/technetwork/jp/ondemand/db-technique/e-9-sql-developer-1484606-ja.pdf