Visual Basic 6による実践データベースプログラミング
サポートページ
この記事を読むのに必要な時間:およそ 0.5 分
補足情報
本書の制作時にはAccess97しかなかったため,解説には,すべてAccess97を使用しております。そのままAccess2000形式に接続すると不具合があります。以下の点に注意して,書籍中の記述をお読み替えください。
[1] 接続情報文字列
Microsoft Access2000形式以降のデータベースに接続するときに使用するOLE DBプロバイダは「Microsoft.Jet.OLEDB.4.0」です。本書に記載されているプログラムの対応する箇所を,次のように変更してください。【変更の必要な箇所】
ConnectionオブジェクトのConnectionStringプロパティ【プログラム例】
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=C:\Sample.mdb"
cn.Open
[2] データグリッドコントロール
「Microsoft.Jet.OLEDB.4.0」を利用しているとき,取得したレコードセットの内容をデータグリッドに表示するには,RecordsetオブジェクトのOpenメソッドを実行する前に,RecordsetオブジェクトのCursorLocationプロパティを設定する必要があります。【プログラム例】
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
'データベースに接続
Set cn = New ADODB.Connection
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=C:\Sample.mdb"
cn.Open
'レコードセットを取得
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient '<--追加
rs.Open "本", cn
'データグリッドに出力
Set DataGrid1.DataSource = rs
以上