Visual BasicのRDOとの連携でデータの参照を行う方法について説明します。
本サンプルコードは、取得データをメッセージボックスにて表示します。
アプリケーションの手順
コネクションを接続します。詳細は、“C.2.1 接続および切断”を参照してください。
rdoConnection.OpenResultsetメソッドでrdoResultsetオブジェクトを生成します。
rdoResultsetオブジェクトよりデータを取得します。
rdoResultset.EOFプロパティでカレント行がEOFかを確認します。
rdoColumns.Countプロパティで列数を確認します。
rdoColumn.Valueプロパティでデータを取得します。
rdoResultset.MoveNextメソッドでカレント行を次の行へと移動します。
rdoResultset.CloseメソッドでrdoResultsetオブジェクトを閉じます。
コネクションを切断します。
オブジェクトを破棄します。
エラー処理については、“C.2.11 エラー処理”を参照してください。
'オブジェクト宣言
Dim Env As rdoEnvironment
Dim Con As rdoConnection
Dim Rst As rdoResultset
Dim i As Integer
Dim msgstr As String
'rdoEnvironmentオブジェクトの生成
Set Env = rdoEngine.rdoEnvironments(0)
On Error GoTo ErrorProc
'1. コネクション接続
Set Con = Env.OpenConnection("DSN01", rdDriverNoPrompt, _
                             False, "UID=USER01;PWD=PASS01;")
'2. rdoResultsetオブジェクトの生成
Set Rst = Con.OpenResultset("SELECT * FROM TESTTBL", _
                        rdOpenForwardOnly, _
                        rdConcurReadOnly, _
                        rdExecDirect)
'3. データの取得
'EOFまで繰り返し
Do Until Rst.EOF
    'データ取得文字列の初期化
    msgstr = ""
    '列数の取得
    For i = 0 To Rst.rdoColumns.Count - 1
        'データの取得
        msgstr = msgstr & Rst.rdoColumns(i).Value & " "
    Next
    msgstr = msgstr & Chr(10)
    '行の位置づけ
    Rst.MoveNext
    'メッセージボックスの表示
    MsgBox msgstr, vbOKOnly, "Resultset"
Loop
'4. rdoResultsetオブジェクトを閉じる
Rst.Close
'5.コネクション切断
Con.Close
'6. オブジェクトを破棄
Set Rst = Nothing
Set Con = Nothing
Set Env = Nothing
Exit Sub
'エラー処理
ErrorProc:
'エラー処理ルーチンを記述します