Microsoft Access 掲示板

レコードを削除するか削除フラグフィールドを追加するか / 2

4 コメント
views
4 フォロー
2

キャンセルになった注文をデータベース上で後日確認したり、復活させることはまずありません。

「まずありません」ということは「絶対ない」ではない「わずかであるがありうる可能性がある」ということですよね。
Accessデータベースはファイルサイズ2GBの制限がありますが、それに達する可能性がないのなら、私なら削除せずに「削除フラグ」を立てておくという方法をとりますね。
インデックスを適切に設定されているなら、パフォーマンスにほとんど影響はないと思いますので。

OSに実装されている「ごみ箱」の機能と同等のもの実装するということをしたことがあります。下記でサンプルを紹介していますのでご参考に。

削除したレコードを復活できる「ごみ箱」の設計
Accessでは削除したレコードは基本的には復活できません。削除する前に確認するようにしても、つい、うっかりと削除してしまう場合や、必要ないと思い削除しても後で必要になる場合もあったりします。 OS のごみ箱のように、いったんごみ箱へ移動しておいて、必要になったらまた復活させることができると便利ですね。テーブル単体では無理ですが、フォームから入力、削除するようにすれば、比較的簡単に実現できます。 ...
Fc2

上記のサンプルでは削除日時フィールドを追加して、それがNullのレコードは生きているレコードと、日時が入力されいいるレコードは削除レコードとしています。
こうしておけば、例えば削除後X年経過したら自動的にテーブルから削除するとか、削除してもいいか確認するとか、、、運用に合わせてお好みに設計できます。

通報 ...