- ベストアンサー
アクセスで変更ログを作成する
MS-Access2000です。データ保護のため、変更ログを取ろうかと考えています。一応以下のような手順を計画中ですが、他によい方法やアドバイス等あればご教授下さい 1.対象テーブルをコピーしてバックアップテーブルを作る 2.対象テーブルに「更新フラッグ」フィールド(boolean)を追加する 3.通常の操作(入力作業)で、レコードに対する変更が行われれば「更新フラッグ」をたてる 4.入力作業終了時に更新フラッグが立っているレコードは、IDでリレーションをとり、バックアップテーブルから当該レコードを「変更履歴テーブル」に(日時と共に)書き出す 5.バックアップテーブルと、対象テーブルの同期を取り、更新フラッグを倒す ざっとこんなかんじですが結構面倒で、何かもっと簡便な方法がないかと思考中です。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- DexMachina
- ベストアンサー率73% (1287/1744)
回答No.4
- DexMachina
- ベストアンサー率73% (1287/1744)
回答No.3
- ShowMeHow
- ベストアンサー率28% (1424/5027)
回答No.1
お礼
度々のご回答有り難うございます。バックアップテーブルを持たずに済む分、スペース的には有利でしょう。 削除フラグは削除そのものに使用しているので更新フラグでしょうか。 しかしこのフラグを立てるタイミングが難しそうです。更新前にフラグをたてて「保存し」新規レコードを作るわけですが、そのために「更新ボタン」的なものを作るのでしょうか?しかし「更新するつもりだったら隣のレコードだった」とかそのために「更新取り消しボタン」が必要なのか、もう少し考えてみます。ここら辺に関するアイデアがあればご教授下さい。
補足
バックアップテーブルを持たないと云うアイディアは大変参考になりました。しかし同じテーブルにおいてフラグで管理するのは、お礼にも書いたタイミングの問題も含め、難しいように思われます。別テーブルに、更新寸前(BeforePost)に書き出す方法で、一応「解決」いたしました。ご報告します。