この特集のトップページへ
Chapter 1:クライアント/サーバーアプリケーションの仕組み

  COLUMN   DAOとADO

 データベースアプリケーションの開発に際し,まだDAOを使っている読者もかなり多いと思われるが,本連載ではDAOではなくADOを使ってデータベースにアクセスするという手法を採用する。なぜなら,Microsoft社はDAOの新規開発を中止することを表明しており,今後はADOを使うように推奨しているからである。

 Microsoft社がADOを推奨するのには,理由がある。DAOでアクセス可能なのはAccessのデータベースファイル(Jetエンジン)やODBC(Open DataBase Connectivity)で接続されたデータベースだけである。しかしADOを利用すると,OLE DBというデータベースを抽象化するためのオブジェクトを介して,リレーショナル形式のデータベースはもちろん,Windows 2000で搭載されるActive Directoryディレクトリサービス,Exchange Serverのメッセージストアなど,多種多様なデータソースに対して同一の手法でアクセスできるようになる。Microsoft社は,このようなデータアクセス戦略を「Universal Data Access(UDA)」と呼んでいる。Fig.1-2を見るとわかるように,アプリケーションは,ADOを通じて多種多様なデータを統一的に扱うことができる。

 また,ADOとその下位層のOLE DBは,COMオブジェクトとして実装されている。COMオブジェクトについては次章で詳しく解説するが,さまざまなプログラミング言語から呼び出して利用することができるという特徴がある。そのため,ADOはDAOと違い,Visual BasicやVisual C++だけでなく,VBScriptやJScriptなどのスクリプト言語から利用することもできる。

Fig.1-2 Universal Data Accessのアーキテクチャ
fig.1-2

 DAOは今後あまり利用されなくなってゆくという理由から,本連載ではデータベースにアクセスする処理部をDAOではなくADOを使って実装する。もし,ADOについてよく知らないのであれば,「Appendix A ADOコンポーネントによるデータベースアクセス」を参考にしてほしい。

prev Chapter 1 3/11 next