Home >VBA 基礎 > このページ
データベースに接続( ADO編)

■Contents

01 カレントデータベースに接続
02 他のデータベースに接続する
   ・ConnectionStringプロパティ
   ・Openメソッド
   ・他のAccessデータベースに接続する

01.カレントデータベースに接続

【書式】Set Cn = CurrentProject.Connection
 Cn:Connectionオブジェクト型の変数
 カレントデータベースに接続するには,宣言した Connection オブジェクト型の変数に、CurrentProject オブジェクトの Connection プロパティを代入します。CurrentProject オブジェクトは,現在使用中のデータベースを表します。
【書式】Set Object = Nothing
 Object:オブジェクト変数
 オブジェクト変数にNothingを代入すると,その変数とオブジェクトの関係を無効にし、オブジェクトが使用していたメモリ上の領域は開放されます。
【書式】Object.Close
 Object:オブジェクト変数
 Close メソッドは,開いているオブジェクトを閉じる処理をします。ただし,オブジェクトはメモリからは削除されず、プロパティを設定して再度を開くことができます。

【使用例】カレントデータベースに接続してエラーが発生したかどうかを調べています。Errors コレクションの Count プロパティが 0 の場合、Errors コレクションには Error オブジェクトが含まれていないことを意味します。
 Public Sub CnCurrentDb()
   Dim cn As ADODB.Connection
    
    '接続
     Set cn = CurrentProject.Connection
       Debug.Print cn.Errors.Count
     '終了
     cn.Close
     Set cn = Nothing
 End Sub



02.他のデータベースに接続する

 カレントデータベース以外のデータベースに接続するには,ConnectionオブジェクトのConnectionStringプロパテを設定し、ConnectionオブジェクトのOpen メソッドを実行します。
 Connectionプロパティは,データベースへの接続情報を保持するプロパティです。
【書式】Cn.ConnectionString = "キーワード1=値1;キーワード2=値2;・・・”
   Cn:Connectionオブジェクト型のオブジェクト変数
  キーワード:接続に必要なキーワード
 省略できないキーワードは,ProviderとData Sourceの2つです。

 ● Providerキーワード
  Access2000形式のデータベースに接続する場合は「Microsoft.Jet.OLEDB.4.0」という値を使用します。

 ● Data Sourceキーワード
  接続するデータベースファイル名をドライブ名からパスを含めた形で指定できます。
【書式】Cn.Open [ConnectionString]
 Cn:Connectionオブジェクト型のオブジェクト変数
 ConnectionString:先にConnectionStringプロパティを設定した場合は省略可能です。
@Connection オブジェクトの Open メソッドを使うと、データ ソースへ接続できます。
A操作が終わったら、Close メソッドを使ってオブジェクトを閉じます。そのオブジェクトのプロパティの設定を変更し、Open メソッドを使って再度開くことができます。
Bオブジェクトをメモリから完全に削除するには、オブジェクト変数に Nothing に代入します。
【例】D:\Access2000\コード\大学コード.mdb に接続する

    cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
                        & "Data Source=D:\Access2000\コード\大学コード.mdb"
     cn.Open
【サンプルコード】
   Public Sub CnAccess()
       Dim cn As ADODB.Connection
       '接続
       Set cn = New ADODB.Connection
       cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
                           & "Data Source=D:\Access2000\コード\大学コード.mdb"
       cn.Open
       MsgBox ("接続成功")
       cn.Close
       Set cn = Nothing
   End Sub

ホームページに|前のページに|次のページに

CopyRight(C) 2004 cbcnet. All Rights Reserved