ADOXを使ったデータベース操作
 
ADOX(ActiveX Data Objects Extensions for Data Definition Language and Security)を使用すると新規データベースやクエリの作成や、テーブルの定義変更、一覧の参照などができます。
ADOXはADOの拡張機能です。また、テーブルやクエリのレコード操作はADOで行います。
 
ADOXを使用するには、参照設定が必要です。メニューバーの参照設定からチェックしてください。

 

Microsoft ADO Ext 2.8(バージョンはそれぞれ異なります) DLL And Securityを有効にします。
 
■ADOXのオブジェクトモデル
この中では、Catalog オブジェクト、Table オブジェクト、Column オブジェクトが主流です。
・Catalog オブジェクト
最上層にあるCatalog オブジェクトは、データベースへの接続を表わします。ADOXを利用する場合、必ず作成する必要があります。
・Table オブジェクト
データベースに存在するテーブル名、クエリ名の一覧を参照する際に使用します。
・Colomnオブジェクト
テーブルフィールドの作成、フィールド一覧の参照、インデックスの作成を行う際に使用します。
・Indexオブジェクト
データベース テーブルのインデックスの作成、主キーの作成を行います。
・Keyオブジェクト
データベーステーブルの主、外部、または一意のキーフィールドを表します。
・Groupオブジェクト
保護されているデータベースへのアクセス権を持つグループアカウントを表します。
・Userオブジェクト
保護されているデータベースへのアクセス権を持つユーザーアカウントを表します。
・Procedureオブジェクト
アクションクエリ、パラメータクエリの一覧を参照する際に使用します。

 
今回は、新規データベースファイルを作成してみましょう。
作成先ディレクトリはCドライブで、ファイル名はTest.mdbとします。
VBのエディタを開いて、新規モジュールを作成し以下を記述します。
解説は後述しますので、入力できたら適当なモジュール名をつけて実行してみてください。
パソコンのCドライブを確認しましょう。
Testというデータベースファイルが作成されました。
では、このコードがどのような内容なのか見ていきましょう。
 
エラー回避。エラーがあれば、ラベル「エラー」へ飛びます。
 
ADOXのCatalogオブジェクトをCatというオブジェクト変数を宣言して使用します。
宣言後、オブジェクト変数にオブジェクトの参照をSetで割り当てます。
 
Accsessにアクセスします。Microsoft.Jet.OLEDB.4.0というプロバイダを介してアクセスします。
ConnectionオブジェクトのConnectionStringプロパティでデータベースへの接続情報を保持しています。
Createメソッドを使用して、データベースを作成します。
Catalogオブジェクト変数.Create ConnectionString & "ディレクトリとファイル名"
という書式で作成できます。
 
使用した変数Catをクリアして処理を終えます。
 
エラー処理です。エラーがあった場合はラベルでここへ飛びます。
ラベルは「ラベル名:」で定義できます。ラベル名を指定すればGoToでその処理へ飛ぶことができます。
Descriptionプロパティでエラー番号に対応したメッセージを出力します。
エラー番号が-2147217897以外の場合は今のエラー番号とvbNewLineで改行し、メッセージを出力します。
 
以上でADOXの解説は終わりです。
ADOと記述方法が似ているのでわかりやすいのではないでしょうか。
 
 

NEXT:マクロよりVBA!>>

 

 
 
(C)1999-2003 BE CORPORATION All rights reserved.Terms of Use. Privacy Policy.