この特集のトップページへ
Appendix A:ADOコンポーネントによるデータベースアクセス

見出し A.5 ADOを使うためのヒント

 以上が,ADOを使ってデータベースを利用するときの,おおまかな操作である。これ以外にもADOは多種多様な機能を備えているが,これまでに説明した内容でデータベースの読み書きは一通りできるので,一般的な操作には事足りるだろう。

 最後に,データベースのコネクションについて若干の補足説明をしておく。あたりまえのことだが,同じデータベースに含まれる複数のテーブルにアクセスするときにも,データベースのコネクションは1つでよい。たとえば,myTableAmyTableBという2つのテーブルにアクセスするとき,次のようにコネクションを2つ張る必要はない。


   Dim objCon1 As ADODB.Connection, objCon2 As ADODB.Connection
   Dim objRec1 As ADODB.Recordset, objRec2 As ADODB.Recordset
   Set objCon1 = CreateObject("ADODB.Connection")
   objCon1.Open "接続文字列" 
   Set objCon2 = CreateObject("ADODB.Connection")
   objCon2.Open "接続文字列"
   Set objRec1 = objCon1.Execute("myTableA",, adCmdTable)
   Set objRec2 = objCon2.Execute("myTableB",, adCmdTable)

 この場合,次のように,コネクションは1つでよい。


   Dim objCon As ADODB.Connection
   Dim objRec1 As ADODB.Recordset, objRec2 As ADODB.Recordset
   Set objCon = CreateObject("ADODB.Connection")
   objCon.Open "接続文字列"
   Set objRec1 = objCon.Execute("myTableA",, adCmdTable)
   Set objRec2 = objCon.Execute("myTableB",, adCmdTable)

 データベースコネクションを張るという作業は,1)メモリを必要とする,2)ネットワーク越しのデータベースであればネットワーク通信が必要となるために作業負担が大きい,という2つの特徴がある。これらの特徴から,無駄なコネクションは張るべきではない。

prev Appendix A 6/6
本文のトップへ | Appendix Aのトップへ