« データ削除の反映-3 | トップページ | ブレーキ換装 »

2014年6月20日 (金)

データ削除の反映-4

ほとんど意味は分かっていないのですが、カスタマイズしたDELETE文で正常に削除が完了しました。

こちらが自動で生成されたsql文

DELETE FROM [M_その他休業日]
WHERE             ([No] = ?) AND (? = 1 AND 休業 IS NULL OR
                        休業 = ?) AND (? = 1 AND 月 IS NULL OR
                        月 = ?) AND (? = 1 AND 日 IS NULL OR
                        日 = ?) AND (? = 1 AND 事由 IS NULL OR
                        事由 = ?) AND (? = 1 AND 継続 IS NULL OR
                        継続 = ?) AND (? = 1 AND 登録日 IS NULL OR
                        登録日 = ?)

これがカスタマイズ途中のsql文です。

DELETE FROM [M_その他休業日]
WHERE             (月 = '1' AND 月 IS NULL OR 月 = ?) AND
                       (日 = '1' AND 日 IS NULL OR 日 = ?) AND
                       (事由 = '1' AND 事由 IS NULL OR 事由 = ?)

作成済みのデータから、レコードを一意で取り出せる項目だけを並べたものです。
”?”の意味が、選択されたデータが入るのだろうぐらいにしかわかっていません。

**='1' AND も外して良さそうなのですが・・・

試したら、ちゃんと動きました。

こんなテーブル構造なら、
Dezin

DELETE FROM [M_その他休業日]
WHERE             (月 IS NULL OR
                        月 = ?) AND (日 IS NULL OR
                        日 = ?) AND (事由 IS NULL OR
                        事由 = ?)
で削除できました。

日付/時刻型の登録日も同じ構文で構わないのか、試してみます。

DELETE FROM [M_その他休業日]
WHERE             (月 IS NULL OR
                        月 = ?) AND (日 IS NULL OR
                        日 = ?) AND (事由 IS NULL OR
                        事由 = ?) AND (登録日 IS NULL OR
                        登録日 = ?)

上記の構文で正常に削除されました。
これで、OKなら、データの型を意識しなくて済むので、すごく楽です。

編集結果の反映は、これで出来ました。
UPDATE          [M_その他休業日]
SET                  休業 = ?, 月 = ?, 日 = ?, 事由 = ?, 継続 = ?, 登録日 = ?
WHERE             (月 IS NULL OR
                        月 = ?) AND (日 IS NULL OR
                        日 = ?) AND (事由 IS NULL OR
                        事由 = ?) AND (登録日 IS NULL OR
                        登録日 = ?)

« データ削除の反映-3 | トップページ | ブレーキ換装 »

VB.net 業務管理」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: データ削除の反映-4:

« データ削除の反映-3 | トップページ | ブレーキ換装 »

スライムパンク防止剤被害

川越市周辺の自転車屋MAP

埼玉県内出張修理店情報

自転車出張修理のブログ

ブログランキング

カテゴリー

無料ブログはココログ