CHECK函数中的 COUNT语句



我正在做一个项目,并试图实现以下目标:有一张放邮票的桌子。但是,我想添加一个检查,其中某个stampcard_id只能在表中出现5次。

我已经尝试使用CHECK约束计数函数

CHECK (COUNT(card_id) <= 5)

但是,这不起作用,因为您不能使用聚合。是否有其他方法可以添加约束,例如card_id 67只能在表中出现5次?

CHECK约束通常不能执行子查询。您不需要指定使用哪个数据库,但是有几个数据库允许您使用触发器实现像这样的复杂约束。

  • MySQL:触发器语法和示例
  • Oracle: PL/SQL TriggersPostgreSQL: CREATE TRIGGER (search for "constraint")

最新更新