gpt4 book ai didi

postgresql - PostgreSQL 触发器是异步的吗?

转载 作者:行者123 更新时间:2023-11-29 11:15:47 25 4
gpt4 key购买 nike

抱歉,我是 SQL 触发器的新手,需要一些帮助。

我在 UPDATE 上为我的一个 PostgreSQL 表创建触发器之后。触发器在不同的表上调用 DELETE。我的问题是:请求的触发部分与 UPDATE 请求是异步的还是同步的?

有关更多信息,请参阅我的触发器和函数:

CREATE OR REPLACE FUNCTION expire_table() RETURNS trigger AS $expire_table$
BEGIN
DELETE FROM object_store WHERE p_time < NOW() - INTERVAL '6 months';
RETURN NEW;
END;
$expire_table$ LANGUAGE 'plpgsql';

CREATE TRIGGER expire_table_trigger
AFTER UPDATE ON objects
EXECUTE PROCEDURE expire_table();

我希望触发部分是异步的,或者有办法做到这一点。

最佳答案

触发器总是和语句在同一个事务中执行,所以它必须是同步的。没办法。

您可以考虑使用工作进程异步处理的队列或使用 LISTEN/NOTIFY 的架构来代替触发器。

关于postgresql - PostgreSQL 触发器是异步的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51596967/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com