SymfowareDataReaderオブジェクトを使用して、前方向スクロール読み取り専用でデータ参照するサンプルコードについて説明します。
SymfowareDataReaderオブジェクトでの参照方法では、参照レコードの取り出し方向はNEXTだけでカーソル位置づけによるデータ更新はできません。
本サンプルコードは、取得データをWebページ上に表示します。事前にフォームへラベルコントロール(Label1)を追加してください。
アプリケーションの手順
SymfowareConnectionオブジェクトでコネクションを接続します。詳細は、“A.3.1 接続および切断”を参照してください。
SymfowareCommandオブジェクトを生成します。(CommandTextプロパティへ問合せ式を設定します)
SymfowareCommand.ExecuteReaderメソッドでSymfowareDataReaderオブジェクトを生成します。
SymfowareDataReaderオブジェクトよりデータを取得します。
SymfowareDataReader.Readメソッドで次の行へ位置づけます。
SymfowareDataReader.FieldCountプロパティで列数を取得します。
SymfowareDataReader.GetValueメソッドでデータを取得します。
SymfowareDataReader.CloseメソッドでSymfowareDataReaderオブジェクトを閉じます。
コネクションを切断します。
オブジェクトを破棄します。
エラー処理については、“A.3.8 エラー処理”を参照してください。
Try 'SymfowareConnectionオブジェクトの生成 Dim con As New SymfowareConnection("DATA SOURCE=127.0.0.1;PORT=26551;INITIAL CATALOG=TEST;USER ID=USER01;PASSWORD=PASS01") '1.コネクション接続 con.Open() '2.SymfowareCommandオブジェクトの生成 Dim command1 As New SymfowareCommand("SELECT * FROM SAMPLE1.TESTTBL", con) '3.SymfowareDataReaderオブジェクトの生成 Dim reader1 As SymfowareDataReader = command1.ExecuteReader '4.データの取得 Dim text1 As String = Nothing '行の位置づけ Do While reader1.Read Dim num1 As Integer = 0 '列数の取得 Do While (num1 < reader1.FieldCount) 'データの取得 text1 = text1 & reader1.GetValue(num1) & " " num1 += 1 Loop text1 = text1 & "<br>" Loop 'メッセージ出力 Label1.Text = "DataReader<br>" & text1 '5.SymfowareDataReaderオブジェクトを閉じる reader1.Close() '6.コネクション切断 con.Close() '7.オブジェクトの破棄 con.Dispose() command1.Dispose() 'エラー処理 Catch exception1 As Exception 'エラー処理ルーチンを記述 End Try