Microsoft Data Access Components(MDAC、またはWindows DAC)は、開発者が様々なデータストアにアクセスする際に、統一された方法を提供する
マイクロソフトの技術フレームワークです。このフレームワークは、ActiveX Data Objects(ADO)、OLE DB、Open Database Connectivity(ODBC)などの主要なコンポーネントで構成されています。
MDACの初期バージョンには、Microsoft Jet Database Engine、MSDASQL(ODBC用のOLE DBプロバイダー)、Remote Data Services(RDS)などが含まれていましたが、これらの技術は現在では非推奨となっています。また、Data Access Objects(DAO)APIやRemote Data Objects(RDO)といった技術も廃止されました。
MDACの初版は1996年8月にリリースされました。当初、
マイクロソフトはMDACをスタンドアロンのプログラムとしてではなく、広範な配布を意図しない概念として捉えていました。しかし、その後、
マイクロソフトはMDACのアップグレード版をウェブベースの再配布可能なパッケージとして提供しました。最終的には、MDACは
Microsoft Windowsや
Internet Explorerに統合され、MDAC 2.8 SP1以降は再配布可能なパッケージとしての提供は終了しました。
MDACの歴史の中では、いくつかのセキュリティ上の欠陥が報告され、特権昇格攻撃などの攻撃が確認されています。しかし、これらの脆弱性は後のバージョンで迅速に修正されてきました。最新バージョンは2.8サービスパック1ですが、この製品には様々なバージョンが存在し、多くの構成要素が非推奨となり、新しい
マイクロソフトの技術に置き換えられています。
Windows Vistaでは、MDACはWindows DACという名称に変更されました。
MDACの主要構成要素
ActiveX Data Objects (ADO): 様々なデータソースへの接続を簡素化するための高レベルのプログラミングインターフェースを提供します。
OLE DB: データストアの種類に関わらず、一貫した方法でデータにアクセスするための低レベルなインターフェースを提供します。
Open Database Connectivity (ODBC): データベース管理システムにアクセスするための標準インターフェースを提供します。
非推奨となったコンポーネント
Microsoft Jet Database Engine: アクセス
データベース(.mdbファイル)の管理に使用されていた
データベースエンジン。
MSDASQL: ODBCデータソースへのOLE DBアクセスを可能にするプロバイダー。
Remote Data Services (RDS): Webアプリケーションからデータにアクセスするための技術。
Data Access Objects (DAO): 初期バージョンのアクセスデータベースにアクセスするためのAPI。
Remote Data Objects (RDO): Oracle
データベースなどのリモート
データベースにアクセスするためのAPI。
MDACの進化
MDACは、当初はスタンドアロンの概念でしたが、後にWindowsに統合され、セキュリティの脆弱性への対応や新しいテクノロジーへの適応を経て進化してきました。現在では、その多くの機能が新しい
マイクロソフトの技術に置き換えられていますが、MDACの概念はWindows DACとして受け継がれています。
注意点
MDACは歴史的な技術であり、多くのコンポーネントが非推奨となっています。新しいアプリケーション開発では、最新のデータアクセス技術を利用することが推奨されます。