OdbcDataReaderオブジェクトを使用して、前方向スクロール読み取り専用でデータ参照するサンプルコードについて説明します。
OdbcDataReaderオブジェクトでの参照方法では、参照レコードの取り出し方向はNEXTだけでカーソル位置づけによるデータ更新はできません。
本サンプルコードは、取得データをWebページ上に表示します。
アプリケーションの手順
OdbcConnectionオブジェクトでコネクションを接続します。詳細は、“D.3.1 接続および切断”を参照してください。
OdbcCommandオブジェクトを生成します。(CommandTextプロパティへSELECT文を設定します)
OdbcCommand.ExecuteReaderメソッドでOdbcDataReaderオブジェクトを生成します。
OdbcDataReaderオブジェクトよりデータを取得します。
OdbcDataReader.Readメソッドで次の行へ位置づけます。
OdbcDataReader.FieldCountプロパティで列数を取得します。
OdbcDataReader.GetValueメソッドでデータを取得します。
OdbcDataReader.CloseメソッドでOdbcDataReaderオブジェクトを閉じます。
コネクションを切断します。
オブジェクトを破棄します。
エラー処理については、“D.3.9 エラー処理”を参照してください。
'オブジェクト宣言 Dim con As Microsoft.Data.Odbc.OdbcConnection Dim com As Microsoft.Data.Odbc.OdbcCommand Dim drd As Microsoft.Data.Odbc.OdbcDataReader Dim i As Integer Dim msgstr As String 'OdbcConnectionオブジェクトの生成 con = New Microsoft.Data.Odbc.OdbcConnection("DSN=DSN01;UID=USER01;PWD=PASS01") Try '1. コネクション接続 con.Open() '2. OdbcCommandオブジェクトの生成 com = New Microsoft.Data.Odbc.OdbcCommand("SELECT * FROM TESTTBL", con) '3. OdbcDataReaderオブジェクトの生成 drd = com.ExecuteReader '4. データの取得 '行の位置づけ While drd.Read() '列数の取得 For i = 0 To drd.FieldCount - 1 'データの取得 msgstr &= drd.GetValue(i) & " " Next msgstr &= "<br>" End While 'メッセージ出力 Label1.Text = "DataReader<br>" & msgstr '5. OdbcDataReaderオブジェクトを閉じる drd.Close() '6. コネクション切断 con.Close() '7. オブジェクトの破棄 con.Dispose() com.Dispose() 'エラー処理 Catch ex As Microsoft.Data.Odbc.OdbcException 'エラー処理ルーチンを記述 End Try