如何声明一个约束来限制持有异物的数量?
如果我有2张桌子, 所有者(id,名称) Dog(name, oid),其中外键 Dog(oid) 引用 Owner(oid)
我想知道如何设置一个约束,让 Owner 最多只能拥有 2 条狗?
If I have 2 table,
Owner(oid, name)
Dog(name, oid), where foreign key Dog (oid) references Owner (oid)
I want to know how to set a constraint so that Owner can only own at most 2 Dogs?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
以下是您正在寻找的触发器的示例,该触发器可以阻止同一主人插入第三只狗。
:位于“FIDDLE_HZTJGHLANPRDIFXWPMZS.DOG_MAX_TWO”,第 8 行
ORA-04088: 执行触发器 'FIDDLE_HZTJGHLANPRDIFXWPMZS.DOG_MAX_TWO' 期间出错
db<>fiddle此处
Here is an example of what you are looking for with a trigger which blocks insertion of a third dog for the same owner.
ORA-06512: at "FIDDLE_HZTJGHLANPRDIFXWPMZS.DOG_MAX_TWO", line 8 ORA-04088: error during execution of trigger 'FIDDLE_HZTJGHLANPRDIFXWPMZS.DOG_MAX_TWO'
db<>fiddle here