ADO.NET 【ActiveX Data Objects .NET】
概要
ADO.NET(ActiveX Data Objects .NET)とは、.NET Framework上で実行されるプログラムから統一的な方法でデータベースなどにアクセスする手段を提供するソフトウェア部品(コンポーネント)および、これを操作するための標準インターフェース(API)。.NETの標準クラスライブラリに含まれる。Windows上で提供されてきたADO(ActiveX Data Objects)と同様の環境を.NET上で提供するもので、API仕様などに共通点はあるが、技術的な新たに設計・開発されたもので、プログラムなどの直接的な互換性などもない。
ADO.NETではデータベースを利用する側のプログラムを「コンシューマ」(consumer:消費者)、各データベース管理システム(DBMS)などが提供するデータベースへの接続や操作を行うためのソフトウェア部品を「データプロバイダ」(proviver:提供者)という。
コンシューマは利用したいデータベースに対応したデータプロバイダがコンピュータに組み込まれていれば、ADO.NETで規定された共通のインターフェース仕様を用いてデータの読み込みや書き込み、データベースの設定の変更などの操作を行うことができる。.NETの特徴を活かし、単一のコンポーネントおよびAPI仕様で.NET上で動作するすべてのプログラミング言語に対応している。
データプロバイダとしてOracle Database用やMicrosoft SQL Server用といった個別のDBMS用だけでなく、OLE DBやODBCとの接続用のコンポーネントが標準で用意されているため、ADO.NETに直接対応していなくてもこれらのインターフェースに対応したDBMS等であれば間接的に接続・操作することができる。また、リレーショナルデータベースだけでなくCSVファイルやMicrosoft Excel形式のワークシートなどを操作するためのデータプロバイダも用意されている。
ADOからの大きな改善点として、データベースから引き出したデータ群を自身のメモリ領域上に保管する「非同期データセット」(DataSetクラス)機能を標準で提供する点がある。必要なデータを常にメモリに置いて高速に処理することができ、処理中に常にDMBS側と接続し続ける必要もなくなる。