- 追加された行はこの色です。
- 削除された行はこの色です。
Open棟梁Project - マイクロソフト系技術情報 Wiki
-[[戻る>データアクセスのいろいろ]]
* 目次 [#je117dc1]
#contents
*概要 [#p227ab20]
以下、ADO.NETデータプロバイダの種類を列挙する。
*汎用データ プロバイダ [#p63e7daa]
-OLEDB.NETデータ プロバイダ
-ODBC.NETデータ プロバイダ
--APIレイヤのみの提供。
--下位のドライバを選択できる。
--選択したドライバによって動きが変わる。
--.NET同梱のため、別途ラインタイムのインストールが不要。
*DBMS固有データ プロバイダ [#kaf99732]
**SQL Server [#z6a38476]
-SQL Server用.NETデータ プロバイダ(System.Data.SqlClient)
--.NET同梱のため、別途ラインタイムのインストールが不要。
**Oracle [#e86b81c5]
***Oracle用.NETデータ プロバイダ(System.Data.OracleClient) [#xb02910f]
-.NET同梱のため、別途ラインタイムのインストールが不要。
-2C/Sなどでは、別途インストールのODP.NETと比べメリットあり。
-ただし、.NET 4.0から非推奨となっているので注意が必要。
--System.Data.OracleClientが.NET 4.0から~
非推奨になる (Oracle, ODP.NET, ADO.NET) - いろいろ備忘録日記~
http://devlights.hatenablog.com/entry/20090629/p1
--マイクロソフト製OracleClientが非推奨に~
http://www.infoq.com/jp/news/2009/06/oracleclient_deprecated
>マイクロソフトは、System.Data.OracleClientが.NET 4.0以降は非推奨になると発表した。~
この名前空間に含まれるクラスは、.NET 4.0では非推奨マークが付けられ、将来のバージョンでは削除される。
***ODP.NETデータ プロバイダ [#j939b851]
-配列バインドをサポート
-フェッチ・サイズをサポート
-最近マネージドのOracleクライアント不要のODP.NETがリリースされたようです。
--Oracle Client(ODP.NET)を手っ取り早くインストールする方法について - 素敵なおひげですね~
http://stknohg.hatenablog.jp/entry/2014/10/24/074303
>ODP.NET Managed DriverはOracle 12cになって登場したフルマネージドのODP.NETドライバです。
--ODAC 12c Release 3 Installation Instructions~
http://www.oracle.com/technetwork/topics/dotnet/downloads/install121021-2389380.html
---ODP.NET, Managed Driver requires .NET Framework 4 or later up to .NET Framework 4.5.2
---ODP.NET, Unmanaged Driver requires .NET Framework 3.5 SP 1 or later up to .NET Framework 4.5.2
**DB2 [#s07d659e]
-DB2.NETデータ プロバイダ
**HiRDB [#aa9b1539]
***HiRDB用.NETデータ プロバイダ(pddndp20.dll) [#j4ee843d]
--配列バインドをサポート
--型指定、サイズ指定が必須
**MySQL [#k23406ba]
***MySQL用.NETデータ プロバイダ(MySQL Connector/NET) [#zdb6aff1]
-ライセンスに注意が必要(GPL)。
**PostgreSQL [#dad19e08]
-PostgreSQL用.NETデータ プロバイダ(Npgsql .Net Data Provider for Postgresql)
*その他 [#b3b449f1]
**ADO [#jc8baf0c]
RDOやDAOの後継、ADO.NETの前任
MDACとともにインストールされる[[COM]]インターフェイスのデータプロバイダ。
-[[COM]]インターフェイスを持つため、~
VB6、VBA、VBScriptなどからデータアクセスする場合に使用する。
-接続型データアクセスが既定と考えられているAPI設計だが、~
取得したレコードセットをCloseすれは非接続型データアクセスが可能。
-ADO.NETと異なり、プロバイダー・ドライバは接続文字列を使用して切り替え可能。
--[FILE] ODBC、OLEDB、ADO、RDS での接続文字列の~
使用方法を説明するための MDACCON.EXE ファイル~
https://support.microsoft.com/kb/193332/JA?wa=wsignin1.0
-サンプルなどはインターネット上から検索できる。
***参考 [#j94eab1b]
-ADO Version 2.6~
http://msdn.microsoft.com/ja-jp/library/cc407851.aspx
-ActiveX Data Objects - Wikipedia~
http://ja.wikipedia.org/wiki/ActiveX_Data_Objects
**OO4O(Oracle Objects for OLE) [#n1995e2c]
Oracle社のリリースしたADOに対抗するカスタムのデータプロバイダ。
-[[COM]]インターフェイスを持つため、~
VB6、VBA、VBScriptなどからデータアクセスする場合に使用する。
-OO4Oは[[64bit対応]]がされていない。
--OO4Oとは~
http://www.doppo1.net/oracle/middle/oo4o.html
-Oracle11g(11.2)が、OO4Oをサポートする最後のバージョン
--従って、今後、新規のOO4O採用は推奨されない。~
(VB6、VBA、VBScript等からはADOを使用する)。
-サンプルなどはインターネット上から検索できる。
-OO4OからADO(ADO.NET)への移行は~
オブジェクトモデル、APIが異なるため困難。
--従って、コンバージョンではなく再構築になる。
***参考 [#j5db0af1]
-Oracle Objects for OLEの紹介~
https://docs.oracle.com/cd/E16338_01/win.112/b58887/intro.htm
-OTN Japan - 意外と簡単! .NETでOracle:oo4oからODP.NET移行編~
http://otndnld.oracle.co.jp/easy/dotnet/oo4otoodp/#8