簡體   English   中英

插入記錄后24小時后執行postgres觸發嗎?

[英]Execute postgres trigger after 24 hours after record insertion?

我想在插入記錄后24小時后執行觸發器,對於每一行,該怎么做? 請幫忙

您知道,如果用戶不驗證其電子郵件,則其帳戶將被刪除。

沒有cron等。

Postgres數據庫。 PostgreSQL的

這可能與安排在特定時間運行sql命令有關。

PG代理

這是我測試過的命令,您可以在PGagent中使用它。

delete from email_tbl where email_id in(select email_id from email_tbl 
where timestamp < now() - '1 day'::interval );

這是我使用的測試數據。

CREATE EXTENSION citext;

CREATE DOMAIN email_addr AS citext
CHECK(
VALUE ~ '^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+[.][A-Za-z]+$' 
);


CREATE TABLE email_tbl (
email_id SERIAL PRIMARY KEY,
email_addr email_addr NOT NULL UNIQUE,
timestamp timestamp default current_timestamp
);

這是一些測試數據

insert into email_tbl (email_addr) values('me@home.net')

insert into email_tbl (email_addr,timestamp)
values('me2@home.net','2015-07-15 00:00:00'::timestamp)

select * from email_tbl where timestamp < now() - '1 day'::interval 

祝一切順利

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM