1
规则在应用于INSERT时触发的顺序是什么?Postgresql规则命令
它们是在插入记录之后或之前完成的。
我想要做的是在另一个表中创建一个新记录,该记录将链接到被插入的记录。例如:
举个例子;要创建一个将创建一个新页面的规则,创建一个文档时,文档将始终以空页面记录开始。
我看上去很高,也许我问了一个错误的问题,但是我找不到任何有关RULES执行顺序的文档。在同一个表和相同事件类型
规则在应用于INSERT时触发的顺序是什么?Postgresql规则命令
它们是在插入记录之后或之前完成的。
我想要做的是在另一个表中创建一个新记录,该记录将链接到被插入的记录。例如:
举个例子;要创建一个将创建一个新页面的规则,创建一个文档时,文档将始终以空页面记录开始。
我看上去很高,也许我问了一个错误的问题,但是我找不到任何有关RULES执行顺序的文档。在同一个表和相同事件类型
的规则是按照字母顺序运行应用。
所以排序不取决于规则的类型,只取决于名称。
而且这也解释了如何在规则“适用”
意识到规则实际上只是一个命令转换机制,或者说命令宏是很重要的。 转换发生在命令执行开始之前。
重点煤矿
所以规则不“之前”发生或语句运行“之后” - 它运行该声明代替。
我所试图做的是创造另一个表中的新记录,这将链接到所插入的记录。
你一定要在后插入触发了点。忘记规则。
这也是手册建议的内容:
如果你真的想为每个物理行独立发生的操作,你可能需要使用一个触发器,而不是规则
嗯,但是'ALSO'规则呢......除了原来的命令之外,它们都运行着,所以应该有一个命令,不是吗? –