繁体   English   中英

Postgres中的触发器意外触发

[英]Triggers in Postgres fired unexpectedly

我有一个父表和几个FK指向父表的子表。 我从父表中删除了一条记录,并且我注意到这会触发所有子表上的删除触发器,即使我要删除的父记录在这些子表中没有子记录。

我觉得这很奇怪。 但是我来自SQL Server,因此Postgres中的行为可能有所不同。

如果重要的话,我的触发器是语句级触发器。

有人可以解释一下,给我指出一些参考资料吗?

我现在没有发布任何代码。但是我认为对于一些在Postgres有更多经验的人来说,情况将是显而易见的。

无论受影响的记录数如何,都会触发语句级别触发器。 因此,即使不存在任何子记录,也会执行自动delete语句(假设FK on delete cascade ),因此将触发触发器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM