- - PR -
DataSet行削除のDBへの反映
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-08-09 11:03
お世話になります。
以下のようにRowUpdatingイベントをハンドルして、CommandTextは取得しました。 しかしパラメタの適切な取得方法が分からず、以下のような方法で取得しました。 INSERT、UPDATE時にはパラメタは取得できるのですが、 DELETE時の時だけは取得できませんでした。
【CommandText】 DELETE FROM TBL_STAFF WHERE (STAFF_CD = @Original_STAFF_CD) AND (ENT_DT = @Original_ENT_DT OR @Original_ENT_DT IS NULL AND ENT_DT IS NULL) AND (ENT_STAFF_CD = @Original_ENT_STAFF_CD OR @Original_ENT_STAFF_CD IS NULL AND ENT_STAFF_CD IS NULL) AND (POST_NAME = @Original_POST_NAME OR @Original_POST_NAME IS NULL AND POST_NAME IS NULL) AND (STAFF_NAME = @Original_STAFF_NAME OR @Original_STAFF_NAME IS NULL AND STAFF_NAME IS NULL) AND (UPD_DT = @Original_UPD_DT OR @Original_UPD_DT IS NULL AND UPD_DT IS NULL) AND (UPD_STAFF_CD = @Original_UPD_STAFF_CD OR @Original_UPD_STAFF_CD IS NULL AND UPD_STAFF_CD IS NULL) | ||||
|
投稿日時: 2004-08-09 11:59
ありゃりゃ パラメータというのは、“@Original_ENT_DT”などの、実際の値、、、という意味だったのですが。
SqlCommand.Parametersの方ですね。 ↓SQL文中のパラメータを、値に置き換える Dim sql As String = e.Command.CommandText For Each param In e.Command.Parameters sql = sql.Replace(param.ParameterName, param.Value.ToString) Next | ||||
|
投稿日時: 2004-08-09 12:25
お世話になります。
Jittaさんのアドバイスを受けて、 DBログ部を修正したところ、削除が動くようになりました・・・。 私のDBログ出力部が悪さをしていた模様です;; 色々アドバイスしていただき感謝しています。 |