Skip to content

MS_DataProvider

nishi_74322014 edited this page Aug 13, 2026 · 1 revision

データプロバイダ

概要

  • データプロバイダについて。

  • 接続形態には、

    • 専用 API を用いるものと、
    • 汎用のインターフェイス(ドライバ)を用いるものがある。

補足(専用API型と汎用ドライバ型): この 2 分類が
性能とトラブルシュートの両面で効いてくる。

特徴
専用 API 型 Microsoft.Data.SqlClient、ODP.NET、Npgsql DBMS のネイティブ プロトコルを直接話す。層が薄く高速。固有機能(配列バインド、Always Encrypted 等)を使える
汎用ドライバ型 System.Data.OleDbSystem.Data.Odbc、JDBC-ODBC 等 下位ドライバを差し替えられる。層が 1 つ増えるぶん遅く、挙動が下位ドライバに依存する

汎用ドライバ型は「どの DBMS でも同じコードで動く」ように見えるが、
実際には SQL 方言・型変換・エラー コードが下位ドライバ次第で変わるため、
接続先が決まっているなら専用 API 型を選ぶのが原則である。

ADO.NETデータプロバイダ

ADO.NETデータプロバイダ

基本的に、専用 API 型のデータプロバイダとなっている。

ADO.NET以外のデータプロバイダ

ADO.NET以外のデータプロバイダ

汎用インターフェイス(ドライバ)型のデータプロバイダが多い。

補足(最新化:MDAC / Windows DAC): 参考に挙げられている MDAC
(Microsoft Data Access Components)は、Windows XP 以降
Windows DAC として OS の一部に統合され、単体では再頒布されない。
また、その中に含まれていた
SQL Server Native Client(SQLNCLI / SQLNCLI11)は非推奨であり、
現在は用途別に以下を個別導入する。

  • .NET から SQL Server → Microsoft.Data.SqlClient(NuGet)
  • ネイティブ / SSIS / リンク サーバ → Microsoft OLE DB Driver for SQL Server
  • ODBC 経由 → Microsoft ODBC Driver for SQL Server

参考

Wikipedia


Tags: 移行, データアクセス

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally