首页 > 解决方案 > 如何添加限制条件,根据您的出生日期,您只能借一定数量的书籍?

问题描述

我有以下表格: Book (sNo) Borrow (sNo, lNo) Person(lNo, name, dob) 现在在这里我需要添加一个约束条件,如果借用人是某个年龄,他们只能得到这么多书。我正在考虑一些在名称相同的情况下计算 lNo 的东西,如果它已经达到极限,他们就不能再借一本书了。但我不知道该怎么做。有没有办法只用约束而不用触发器?

标签: sqlpostgresql

解决方案


不,我不认为这是可能的。

如果您想要一个没有竞争条件的解决方案,您可能也必须进行非规范化:将 a 添加borrow_count到具有适当检查约束的人。此数字由 on 上的触发器维护borrow


推荐阅读