アプリケーションのモデル/プレゼンテーション層に必要なすべてのビジネスルールがあり、それらが正常に機能すると仮定します。私の質問は、冗長なビジネスルール(つまり、2つの日付のスパンが他の既存のスパンと重複できない)をSQLServerなどのリポジトリで使用する必要があるかどうかの1つです。
このルールを適用する制約をSQLServerに追加する必要がありますか?一方では、アプリケーションをバイパスするときに、だれか(DBAを含む)が不注意にビジネスルールを破ることを防ぎます。さらに、プライマリキーと外部キーを介してリポジトリにいくつかの形式のビジネスルールがすでにあります。一方、複製されたルールは、開発と維持に追加の時間を必要とします。
この質問は多くの異なるテクノロジーにまたがっているので、私は意図的にタグを一般的にしました。