让我们假设一个应用程序在模型/表示层中具有所有必要的业务规则,并且它们工作正常.我的问题是,是否应在sql Server等存储库中使用冗余业务规则(即两个日期的跨度不能与任何其他现有跨度重叠).
在sql Server中添加强制执行此规则的约束是否必要/有益?一方面,它可以防止任何人(包括DBA)在绕过应用程序时无意中破坏业务规则.此外,我们已经通过主键和外键在存储库中拥有某些形式的业务规则.另一方面,重复的规则需要额外的时间来开发和维护.
这个问题涵盖了许多不同的技术,所以我故意保持标签的通用性.