编写触发器的简洁方法

时间:2018-08-09 11:58:23

标签: sql postgresql plpgsql database-trigger

对不起,我对编写Postgres触发器非常陌生。

我想编写一个Postgre DB触发器,该触发器在UPDATE时触发  对Postgres中的表进行操作。

我的问题是:我是否正确编写了该触发器和相关功能?我已经测试了此代码,它确实可以工作,但不能确定它的美观或效率。可以改善吗?

触发后,此触发器调用一个函数,该函数将删除表中30天之前的任何数据。

谢谢您的阅读,希望您能为您提供帮助?

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


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

0 个答案:

没有答案