各エントリが異なる時間有効性を持つことができるいくつかのテーブルがあります。エントリは次のようになります: (Id, ValidFrom, ValidTo)。同じ ID を持つが有効性が異なるエントリがさらに存在する可能性があります。(有効性は重複してはなりません)。現時点または将来の時点で挿入/削除/更新操作を行う必要があります。
これはすべてアプリケーションのビジネスロジックで処理できますが、外部キーを使用して他のテーブルからこのテーブルを参照したいと考えています。
テンポラル テーブルがその方法である可能性があることがわかりましたが、小さな問題があります。SysStartTime 列と SysEndTime 列は、INSERT/UPDATE の時刻によって自動的に決定され、挿入/更新時には設定できません。
外部キー制約を許可しながら、各エントリの有効性情報をデータベース テーブルに格納する方法はありますか? その要求は合理的ですか?