■1.DAOによるデータアクセス
ExcelやVisual BasicでAccessのデータベースファイル(Jetデータベース)を操作する場合は、DAOというオブジェクトを介してデータベースファイルにアクセスします(これは、ローカルデータベースへのアクセスも、リモートデータベースへのアクセスも可能になっています)。
DAOは、2種類のワークスペースと呼ばれる、データベースを操作するセッションをサポートしています。ひとつは、Jetワークスペースで、Jetデータベース、Jet接続型ODBCデータソース、そしてParadoxやLotus 1-2-3のような他の形式のISAMデータソースにアクセスすることができます。もうひとつは、ODBCDirectワークスペースと呼ばれるもので、このワークスペースを使用すると、JetデータベースエンジンをロードすることなくODBCドライバを経由してデータベースサーバーにアクセスすることができます。
DAOのオブジェクト構造は、このワークスペースの違いに対応して、2種類のオブジェクト構造をもちます。いずれも最上位のオブジェクトが「DBEngine」オブジェクトになっており、ここから派生したオブジェクトで組み立てられています(図1)。
図1:JetワークスペースでのDAOのオブジェクト構造 |
 |
DAOのオブジェクトの使い方は、このあと実際にデータベースファイルを操作しながら解説してゆきますが、DAOではデータベースファイルに格納されているテーブルやフィールド、レコードデータ、クエリーなどをすべてオブジェクトとして扱うように作られています。したがって、VBAからデータベースファイルを操作する場合は、ExcelやWordのVBAコードと同じように、これらのデータベース特有のオブジェクトにプロパティとメソッドを組み合わせて、処理を作成してゆきます。