2016-04-29 12 views
1

私はデータベース設計が初めてで、すべての挿入、更新、削除で同一の監査レコードを作成するシステムを設計しています。以下変更点を追跡するための監査テーブルの設計問題

"MyTableという" での設計MyTableというMyAuditTable

enter image description here

RefId1、RefId2(両方とも整数)強制参照整合性と、他のテーブルへの参照キーであるています。

MyAuditTable」にRefId1、RefId2を設定する必要がありますか?参照整合性を強制するか、または整数値として持ち、整合性を強制しないでください。

何私の理想的な設計すべきですか?

乾杯!

答えて

1

私はいいえと言います。

あなたは歴史的価値を制限したくない場合もあります。

は、なぜあなたは必要とIDに、監査テーブルのですか?

は、私はさらに一歩進み、Ref1ValueとRef2Value(ないID)を置くので、私はそれを変更すると、それはその時にあったことを歴史の中で値を記録することができます。

+1

私はRefId1またはRefId2のいずれかを持っている個々のテーブルの列(複数可)の歴史を取得したい場合、我々はそれを得ることができない場合がありますが場合ことをイマイチ?データを複製する可能性もありますか? – Immortal

+0

あなたはあなたがテーブルに置いたものを返すでしょう – Paparazzi

関連する問題