はてなブックマークに追加
Facebookでシェア
Google+でシェア
Twitterでシェア
ADO超入門
ADOは、いろいろなデータを簡単に利用するための機能です。Accessのデータベースはもちろん、SQL Server、MySQLといった各種のデータベースから、Excelワークブック、テキストファイルなどの幅広い種類のデータを扱えます。また、データの読み書きや管理はADOの機能を使って行うため、データの種類を意識せず容易にデータを扱えるのも特徴です。
ADOとは
 ActiveX Data Objects(略してADO)とは、さまざまなデータソースを簡単に利用できるようにするためのプログラミングインターフェースです。Accessデータベース、SQL Server、MySQLなどの各種データベースの読み書きはもちろん、Excelワークブック、テキストファイルの読み書きも行えます。

 ADOの利点は、どのデータソースであっても同じ方法・手段で操作できるということです。ADOがデータソースとプログラムの仲介役を担ってくれるため、プログラム上ではデータの違いをほとんど意識する必要がありません。強いていえば、使用するデータソースのクセや特徴を活かすといった細かな違いを意識するくらいで、プログラムに記述するADOのプロパティやメソッドは同じです。そのため、データソースを変更したときのプログラムの変更も容易です。

図 1ADOのやくわり
ADOが通訳のようなやくわりを担います
OLE DBプロバイダ・ODBCドライバとは
 ADOは、OLE DBプロバイダやODBCドライバというAPIを使って各種のデータソースにアクセスします。ODBCは主にリレーショナルデータベースを対象としたAPI、OLE DBはODBCの発展型で、リレーショナルデータベースだけでなく、非リレーショナルデータベースや電子メールといった幅広いデータソースを扱えるAPIです。
 VBAのプログラムでは、使用するデータソースに応じたOLE DBプロバイダやODBCドライバをADOに指定して目的のデータソースにアクセスします。

図 2OLE DBプロバイダ・ODBCドライバとは
使用するデータソースに応じたOLE DBやODBCを使います
ADOとDAOの違い
 データベースを操作する機能は、ADOの他にもDAOがあります。ADOとDAOはデータベースを操作するという基本的な部分は同じですが、機能や役割は大きく異なります。DAOがAccessデータベースに特化したやくわりを担うのに対し、ADOのやくわりはAccess・SQL Server・MySQLといったいろいろなデータソースが扱えることです。
 ADOとDAOの使い分けは簡単です。Accessデータベースに特化した機能を使いたいときはDAOを、Accessデータベースを含めてデータソースに対するデータの読み書きを行うならADOを使います。

図 3DAOとADOの違い
DAOとADOの違い
・Accessデータベース専用です
・Accessデータベース固有の機能を使用できます
・他の形式のデータベースは直接利用できません
・いろいろなデータソースを扱えます
・データソースが異なっても、あまり意識せず使用できます


Copyright(C) 1999-2015 結城圭介(Ver.3.51) All rights reserved