我有一个使用软删除的简单模式(这就是它的设计方式并且无法更改)。有两个表参与架构:Company (id, is_deleted)其中当然是表的Employee (id, company_id, is_deleted)FK 。规则是:company_idCompany
- 如果一个
Company有is_deleted = true,那么所有Employee提到的那个公司都应该有is_deleted = true。 - 但是即使父母有,
Employee也可能有。is_deleted = trueCompanyis_deleted = false
我的两个问题是 a) 如何执行这些约束?b)当a被软删除时,如何最简单地确保is_deleted = true级联。Company
我添加了标签 postgresql 和 sql server 因为这些是我最感兴趣的数据库。如果其他 rdbms:es 中还有其他解决方案,我也想听听它们。