首页 > 数据库技术 > 详细

postgresql 时间戳自动更新

时间:2021-04-24 01:31:06      阅读:21      评论:0      收藏:0      [点我收藏+]

PostgreSQL执行Insert语句时,自动填入时间的功能可以在创建表时实现,但更新表时时间戳不会自动自动更新。

 

解决方案

通过触发器实现,具体如下:

create or replace function upd_timestamp() returns trigger as
$$
begin
    new.change_datetime = current_timestamp;  --change_datetime为更新时间戳字段;所有的表建议都使用这个字段作为更新的时间戳字段;
    return new;
end
$$
language plpgsql;

创建一个例子表:

create table ts (
    id      bigserial  primary key,
    tradeid integer ,
    email varchar(50),
    num integer,
    change_datetime timestamp default now()  --change_datetime 为更新字段。
);

创建这个表上的触发器:

create trigger t_name before update on ts for each row execute procedure upd_timestamp();

剩下的就是自己测试一下了。

postgresql 时间戳自动更新

原文:https://www.cnblogs.com/Thenext/p/14695716.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!