名前付きパラメタで更新を行うサンプルコードについて説明します。
本サンプルコードは、UPDATE文実行後、影響を受けた行数をWebページ上に表示します。事前にフォームへラベルコントロール(Label1)を追加してください。
アプリケーションの手順
SymfowareConnectionオブジェクトでコネクションを接続します。詳細は、“A.2.1 接続および切断”を参照してください。
SymfowareCommandオブジェクトを生成します。(CommandTextプロパティに、UPDATE文を設定します)
SymfowareCommand.Parameters.AddメソッドでSymfowareParameterオブジェクトの生成と設定を行います。追加するSymfowareParameterオブジェクトのSymfowareParameter.ParameterName属性は、SQL文中のパラメタ名と一致させてください。
SymfowareParameter.Valueプロパティへパラメタの値を設定します。
必要に応じて、SymfowareParameter.SymfowareDbTypeなどのプロパティを設定してください。
SymfowareCommand.ExecuteNonQueryメソッドでUPDATE文を実行します。
ExecuteNonQueryメソッドより更新された行数が返されます。
コネクションを切断します。
オブジェクトを破棄します。
エラー処理については、“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) { // エラー処理ルーチンを記述 }