postgres 触发通知 - 哪个更好:之前或之后

postgres trigger notify - what is better: before or after

我正在使用 postgres-DB 和 pyton 脚本,应该使用 postgres NOTIFY-functionality 通知 DB-Changes。 在所有示例中,我可以找到该主题的 postgres 中的触发器是使用 BEFORE 实现的,如本例所示:

CREATE TRIGGER notify_on_changes
  BEFORE UPDATE OR INSERT OR DELETE
  ON table_bla_bla
  FOR EACH ROW
  EXECUTE PROCEDURE notify_changes();

使用 BEFORE 而不是 AFTER 的原因是什么?我不想在 inserting/updating 之前更改任何内容或删除一行。 使用 AFTER 不是更好吗?

AFTER 触发器必须在内存中排队等待稍后执行,因此效率较低。

BEFORE 触发器存在一些其他 BEFORE 触发器会在您看到它之后但在写入它之前修改该行的风险。