例えばになるのですが
payments1(支払い1)
payments2(支払い2)
payments_history(支払い履歴)
というエンティティ(テーブル)があるとしてpayments_historyにはpayments1、payments2の支払い履歴をデータとしてためるとします。
参照整合性を保つためにpayementsテーブルにはtransaction1とtransaction2の外部キー制約を張った外部キーがあるとします。
payments1かpayments2のレコードが作成された時にpayments_historyにもレコードを作成するとすると、payments1、payments2の外部キーのいずれかにnullが入ることとなります。
このような設計というのはDB設計的にありなのでしょうか?
例えばActiveRecord等でPaymentsHistory.all
等で一気に履歴を参照したい際プログラム側で便利になると思うのですが、外部キーカラムをnull許可にすることで何か問題が起きることってあり得るのでしょうか?
よろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。