Access VBA入門 | ADO-Connectionオブジェクト(概要)
公開日:2017年6月9日 更新日:2017年6月25日
Connectionオブジェクトは、ADOのオブジェクトであり、データベースに接続する際に使用します。
ここでは、Connectionオブジェクトの概要について解説します。
Connectionオブジェクト(ADO)の概要【Access VBA入門】
目次
1.Connectionオブジェクトの位置付け
ADODBライブラリのメンバーです。
2.使用目的
ADOは、主に①データベースへの接続と②データ操作に使用しますが、Connectionオブジェクトは①データベースへの接続に使用します。
3.使い方
3-1.事前バインディング
変数宣言と参照の代入には、参照設定を行った後に次のコードを記述します。
'事前バインディング 'Connectionオブジェクトのインスタンス化 Dim CN As ADODB.Connection '変数CNは例示。自由に設定してください。 Set CN = New ADODB.Connection '1行で表すことも可能 Dim CN As New ADODB.Connection
参照設定やADOのインスタンス化については、「Access VBA入門 | ADOオブジェクトモデル(概要)」で解説していますので、参照ください。
【参考】実行時バインディング
実行時バインディングによれば、参照設定を行わずにConnectionオブジェクトを使用することができます。ただし、事前バインディングに比べて動作は遅くなります。また、私のPC環境下では、コードの予測入力ができなくなる、引数を設定できないなど、不便と感じることが発生しました。従って、できる限り事前バインディングを使用することをお勧めします。
'実行時バインディング 'Connectionオブジェクトのインスタンス化 Dim CN As Object '変数CNは例示。自由に設定してください。 Set CN = CreateObject("ADODB.Connection")
3-2.使用例
次のサンプルプログラムは、カレントデータベースに接続した後に、接続状態をメッセージ表示します。
Sub データベース接続の状態確認() Dim CN As ADODB.Connection '(1) '変数CNは例示。自由に設定してください。 Set CN = CurrentProject.Connection '(2) MsgBox CN.State '(3) CN.Close '(4) Set CN = Nothing '(5) End Sub
(1)Dim CN As ADODB.Connection
→Connectionオブジェクトの変数CNを宣言しています。
(2)Set CN = CurrentProject.Connection
→本来であれば事前バインディングによるインスタンス化では、上述の通り「Set CN = New ADODB.Connection」と記述します。しかし、例外も存在し、カレントデータベースに接続する場合には、今回のようにCurrentProjectオブジェクトのConnectionプロパティを使用して記述します。
ちなみにCurrentProjectオブジェクトはADOには属さず、Accessライブラリのメンバー(VBAの範囲内のオブジェクト)になります。また、Connectionプロパティは、このCurrentProjectオブジェクトに属するプロパティであり、今回のテーマであるConnectionオブジェクトとは別物になります。誤解しやすのでご注意ください。
(3)MsgBox CN.State
→カレントデータベースへの接続状態をメッセージ表示します。
StateプロパティはConnectionオブジェクトのプロパティです。データベースへの接続状態を数値で表します。例えば、0であれば、データベースは閉じている、1ならばデータベースは開いている状態を表します。
(4)CN.Close
→カレントデータベースから接続を切断します。
CloseメソッドはConnectionオブジェクトのメソッドです。データベースへの接続を切断します。
(5)Set CN = Nothing
→変数CNにNothingを代入することで、オブジェクト参照を解除しています。
この記述によって、インスタンス化のために使用していたPCメモリを解放することができます。Connectionオブジェクトの使用を終了する場合には「Set 変数 = Nothing」を設定しておく、と覚えておきましょう。
4.Connectionオブジェクトのメソッド、プロパティ
Connectionオブジェクトのプロパティ、メソッドは次の通りです。
プロパティ | 説明 |
---|---|
ConnectionString | データベースへ接続するために必要な情報を設定する。 |
State | データベースの接続状態を数値で表す。 |
メソッド | 説明 |
---|---|
Open | データベースに接続する。 |
Close | データベースを切断する。 |
Execute | コマンドを実行します。 |
BeginTrans | トランザクション処理を開始します。 |
CommitTrans | トランザクション処理を確定します。 |
RollBackTrans | トランザクション処理による変更を取り消します。 |
各オブジェクトのメソッド、プロパティや、その使い方については別ページにて解説しています。
10冊まで同時に読み放題の電子書籍サービス(200万冊以上が対象)。
PC・ITカテゴリーの対象数は7,000以上。
スキル、ノウハウ吸収や話題作りにと、ライフ・クオリティを高めてくれます。
関連記事
Excel関数のメリットを活かすVBA開発
他に載っていないVBAツール例
初心者からVBAプログラマーになるまでの書籍を紹介
予想以上に役立つ場面が多いプログラミング言語
実証データを基に解説