AccessVBA:【DAO】Data Access Objectsについて
◆「DAO」(Data Access Objects)とは
Accessデータベースに接続し、操作する手段の一つです。
DAOはAccessのデータベースエンジンのJetを利用してデータベースを操作することができます。
DAOはAccessに特化しており、単体のAcceessシステムを操作することに適していますが、他のデータベース(MySQLとか)との連携はできません。他のデータベースとの連携を考えている場合はADO(ActiveX Data Object)を利用します。
◆「DAO」の利用方法
VBEの「ツール」→「参照設定」では「Microsoft Office XX.X Access database engine Object Library」(「XX.X」は「16.0」とかになっています。)にチェックが入っていない場合はチェックを入れてください。
チェックを入れて「OK」を押せば有効になります。
◆「DAO」の基本的な使い方
基本的には以下の流れで実行します。
- DAOデータベース用のオブジェクトを宣言
- データベースに接続
- SQLなどを実行
- データベースの接続解除
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
Private Sub DAO接続_Click() Dim CDB As DAO.Database '1.DAOデータベース用のオブジェクトを宣言' Dim xSQL As String Set CDB = CurrentDb '2.現在のデータベースに接続' 'Set CDB = "C:\Users\VBA\Newファイル.accdb"' '他のAccessに接続' '実行するSQL文を作成' xSQL = "SELECT * " xSQL = xSQL & "INTO [T_サンプルコピー]" xSQL = xSQL & "FROM [サンプル1]" CDB.Execute xSQL '3.SQLを実行' CDB.Close 'DBを閉じる' Set CDB = Nothing '4.接続解除' MsgBox "完了" End Sub |