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

A.2.11 名前付きパラメタでの更新

名前付きパラメタで更新を行うサンプルコードについて説明します。

本サンプルコードは、UPDATE文実行後、影響を受けた行数をWebページ上に表示します。事前にフォームへラベルコントロール(Label1)を追加してください。

アプリケーションの手順

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

  2. SymfowareCommandオブジェクトを生成します。(CommandTextプロパティに、UPDATE文を設定します)

  3. SymfowareCommand.Parameters.AddメソッドでSymfowareParameterオブジェクトの生成と設定を行います。追加するSymfowareParameterオブジェクトのSymfowareParameter.ParameterName属性は、SQL文中のパラメタ名と一致させてください。
    SymfowareParameter.Valueプロパティへパラメタの値を設定します。
    必要に応じて、SymfowareParameter.SymfowareDbTypeなどのプロパティを設定してください。

  4. SymfowareCommand.ExecuteNonQueryメソッドでUPDATE文を実行します。
    ExecuteNonQueryメソッドより更新された行数が返されます。

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

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

エラー処理については、“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("UPDATE SAMPLE1.TESTTBL SET DEC_C=:DEC_C," +
"DAT_C=:DAT_C,CHA_C = :CHA_C WHERE KEY_C = :KEY_C", con);
         // 3. SymfowareParameterオブジェクトの生成と設定
         com.Parameters.Add("DEC_C", 111111.111);
         com.Parameters.Add("DAT_C", "2007/04/10");
         com.Parameters["DAT_C"].SymfowareDbType = SymfowareDbType.Date;
         com.Parameters.Add("CHA_C", "更新データ");
         com.Parameters.Add("KEY_C", 100);
         // 4. UPDATE文の実行
         int i = com.ExecuteNonQuery();
         // 更新行数を表示する
         Label1.Text = "RowCount<br>" + i + "行更新されました";
         // 5. コネクション切断
         con.Close();
         // 6. オブジェクトの破棄
         con.Dispose();
         com.Dispose();
}
// エラ-処理
catch (Exception e1)
{
         // エラー処理ルーチンを記述
}