ページの先頭行へ戻る
Symfoware Server V11.1.0 アプリケーション開発ガイド(.NET Data Provider編)
FUJITSU Software

A.2.2 SymfowareDataReaderでの参照

SymfowareDataReaderオブジェクトを使用して、前方向スクロール読み取り専用でデータ参照するサンプルコードについて説明します。

SymfowareDataReaderオブジェクトでの参照方法では、参照レコードの取り出し方向はNEXTだけでカーソル位置づけによるデータ更新はできません。

本サンプルコードは、取得データをWebページ上に表示します。事前にフォームへラベルコントロール(Label1)を追加してください。

アプリケーションの手順

  1. SymfowareConnectionオブジェクトでコネクションを接続します。詳細は、“A.2.1 接続および切断”を参照してください。

  2. SymfowareCommandオブジェクトを生成します。(CommandTextプロパティへ問合せ式を設定します)

  3. SymfowareCommand.ExecuteReaderメソッドでSymfowareDataReaderオブジェクトを生成します。

  4. SymfowareDataReaderオブジェクトよりデータを取得します。
    SymfowareDataReader.Readメソッドで次の行へ位置づけます。
    SymfowareDataReader.FieldCountプロパティで列数を取得します。
    SymfowareDataReader.GetValueメソッドでデータを取得します。

  5. SymfowareDataReader.CloseメソッドでSymfowareDataReaderオブジェクトを閉じます。

  6. コネクションを切断します。

  7. オブジェクトを破棄します。

エラー処理については、“A.2.8 エラー処理”を参照してください。

try
{
    // SymfowareConnectionオブジェクトの生成
    SymfowareConnection con = new SymfowareConnection("DATA SOURCE=127.0.0.1;PORT=26551;" +
"INITIAL CATALOG=TEST;USER ID=USER01;PASSWORD=PASS01");
    // 1. コネクション接続
    con.Open();
    // 2. SymfowareCommandオブジェクトの生成
    SymfowareCommand com = new SymfowareCommand("SELECT * FROM SAMPLE1.TESTTBL", con);
    // 3. SymfowareDataReaderオブジェクトの生成
    SymfowareDataReader drd = com.ExecuteReader();
    // 4. データの取得
    string msgstr = null;
    // 行の位置づけ
    while (drd.Read())
    {
        // 列数の取得
        for (int i = 0; i < drd.FieldCount; i++)
        {
            // データの取得
            msgstr += drd.GetValue(i) + " ";
        }
        msgstr += "<br>";
    }
    // メッセージ出力
    Label1.Text = "DataReader<br>" + msgstr;
    // 5. SymfowareDataReaderオブジェクトを閉じる
    drd.Close();
    // 6. コネクション切断
    con.Close();
    // 7. オブジェクトの破棄
    con.Dispose();
    com.Dispose();
}
// エラー処理
catch (Exception e1)
{
    // エラー処理ルーチンを記述
}