探索条件付きSQL文で更新を行うサンプルコードについて説明します。
本サンプルコードは、UPDATE文実行後、影響を受けた行数をWebページ上に表示します。事前にフォームへラベルコントロール(Label1)を追加してください。
アプリケーションの手順
SymfowareConnectionオブジェクトでコネクションを接続します。詳細は、“A.3.1 接続および切断”を参照してください。
SymfowareCommandオブジェクトを生成します。(CommandTextプロパティへUPDATE文を設定します)
SymfowareCommand.Parameters.AddメソッドでSymfowareParameterオブジェクトの生成と設定を行います。SQL文中のパラメタマーカ('?')の出現順に生成してください。
SymfowareParameter.ParameterNameプロパティには、オブジェクト名を任意で設定します。
SymfowareParameter.Valueプロパティへパラメタの値を設定します。
日時型のパラメタにはSymfowareParameter.SymfowareDbTypeプロパティを設定します。
SymfowareCommand.ExecuteNonQueryメソッドでUPDATE文を実行します。
ExecuteNonQueryメソッドより更新された行数が返されます。
コネクションを切断します。
オブジェクトを破棄します。
エラー処理については、“A.3.8 エラー処理”を参照してください。
Try 'SymfowareConnectionオブジェクトの生成 Dim connection1 As New SymfowareConnection("DATA SOURCE=127.0.0.1;PORT=26551;" _ & "INITIAL CATALOG=TEST;USER ID=USER01;PASSWORD=PASS01") '1.コネクション接続 connection1.Open() '2.SymfowareCommandオブジェクトの生成 Dim command1 As New SymfowareCommand("UPDATE SAMPLE1.TESTTBL SET DEC_C=?,DAT_C=?," _ & "CHA_C = ? WHERE KEY_C = ?", connection1) '3.SymfowareParameterオブジェクトの生成と設定 command1.Parameters.Add("DEC_C", 111111.111) command1.Parameters.Add("DAT_C", "2007/04/10") command1.Parameters.Item("DAT_C").SymfowareDbType = SymfowareDbType.Date command1.Parameters.Add("CHA_C", "更新データ") command1.Parameters.Add("KEY_C", 100) '4.UPDATE文の実行 Dim num1 As Integer = command1.ExecuteNonQuery '更新行数を表示する Me.Label1.Text = "RowCount<br>" + num1.ToString + "行更新されました" '5.コネクション切断 connection1.Close() '6.オブジェクトの破棄 connection1.Dispose() command1.Dispose() 'エラー処理 Catch exception1 As Exception 'エラー処理ルーチンを記述 End Try