当前位置: 代码网 > it编程>数据库>MsSqlserver > PostgreSQL设置时间自动更新的示例代码

PostgreSQL设置时间自动更新的示例代码

2025年03月05日 MsSqlserver 我要评论
前言在使用postgresql数据库,可以通过设置字段的默认值和更新机制来实现自动更新时间和创建时间,但是跟mysql又有点区别默认时间可以使用current_timestamp函数插入当前时间,sq

前言

在使用postgresql数据库,可以通过设置字段的默认值和更新机制来实现自动更新时间和创建时间,但是跟mysql又有点区别

默认时间

可以使用current_timestamp函数插入当前时间,sql语句为

create table sys_user (

id serial primary key,

name varchar(255),

create_time timestamp default current_timestamp
);

执行insert操作

insert into sys_user values(1, 'aaa')

时间会自动生成

执行更新操作

update sys_user  set name = 'bbb' where id =1

发现时间还是不变

使用触发器更新时间

create table sys_user (

id serial primary key,

name varchar(255),

create_time timestamp default current_timestamp,

update_time timestamp default current_timestamp
);

创建一个触发器

create or replace function update_timestamp() returns trigger as
$$
begin
    new.update_time= current_timestamp;
    return new;
end
$$
language plpgsql;

然后执行语句

create trigger update_timestamp before update on sys_user for each row execute procedure update_timestamp();

其中,sys_user为表名,update_timestamp为触发器名称,随意填写,update_timestamp()为触发器函数名称

执行insert语句

 insert into sys_user values(1, 'aaa')

其中,sys_user为表名,update_timestamp为触发器名称,随意填写,update_timestamp()为触发器函数名称

执行insert语句

 insert into sys_user values(1, 'aaa')

结果如下

执行更新操作

update sys_user  set name = 'bbb' where id =1

结果如下

到此这篇关于postgresql设置时间自动更新的示例代码的文章就介绍到这了,更多相关postgresql时间自动更新内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com