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

 更新时间:2025年03月05日 11:20:31   作者:考虑考虑  
在我们日常开发中,在设计数据库字段的时候不可避免的都要created_time以及updated_time两个时间戳字段,作用大家也都一目了然,下面将为大家详细介绍PostgreSQL设置时间自动更新的方法,需要的朋友可以参考下

前言

在使用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时间自动更新内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解如何定位postgreSQL数据库中未被使用过的索引

    详解如何定位postgreSQL数据库中未被使用过的索引

    在生产环境上,由于不规范的优化措施,数据库中可能存在大量的索引,并且相当一部分的索引重未被使用过,今天带大家如何找出这些索引,本文给大家介绍了定位postgreSQL数据库中未被使用过的索引的方法,需要的朋友可以参考下
    2024-03-03
  • pgsql添加自增序列、设置表某个字段自增操作

    pgsql添加自增序列、设置表某个字段自增操作

    这篇文章主要介绍了pgsql添加自增序列、设置表某个字段自增操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • PostgreSQL的外部数据封装器fdw用法

    PostgreSQL的外部数据封装器fdw用法

    这篇文章主要介绍了PostgreSQL的外部数据封装器fdw用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • Postgresql开启SQL执行语句收集过程

    Postgresql开启SQL执行语句收集过程

    本文介绍如何修改PostgreSQL的配置文件来启用SQL执行语句的日志记录,包括打开配置文件、修改日志相关设置以及查看日志文件的方法,关键步骤包括删除注释符号、设定日志存储路径和文件名、选择记录的SQL语句类型,此操作有助于数据库管理和问题调试
    2024-10-10
  • PostgreSQL用户登录失败自动锁定的处理方案

    PostgreSQL用户登录失败自动锁定的处理方案

    这篇文章主要介绍了PostgreSQL用户登录失败自动锁定的解决办法,本文给大家分享解决方案,通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • PostgreSQL12同步流复制搭建及主备切换方式

    PostgreSQL12同步流复制搭建及主备切换方式

    这篇文章主要介绍了PostgreSQL12同步流复制搭建及主备切换方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • 在Ubuntu中安装Postgresql数据库的步骤详解

    在Ubuntu中安装Postgresql数据库的步骤详解

    PostgreSQL 是一款强大的,开源的,对象关系型数据库系统。它支持所有的主流操作系统,包括 Linux、Unix(AIX、BSD、HP-UX,SGI IRIX、Mac OS、Solaris、Tru64) 以及 Windows 操作系统。本文给大家介绍了在Ubuntu中安装Postgresql数据库的步骤,需要的朋友可以参考下。
    2017-09-09
  • PostgreSQL存储过程用法实战详解

    PostgreSQL存储过程用法实战详解

    这篇文章主要介绍了PostgreSQL存储过程用法,结合具体实例详细分析了PostgreSQL数据库存储过程的定义、使用方法及相关操作注意事项,并附带一个完整实例供大家参考,需要的朋友可以参考下
    2018-08-08
  • PostgreSQL教程(十五):系统表详解

    PostgreSQL教程(十五):系统表详解

    这篇文章主要介绍了PostgreSQL教程(十五):系统表详解,本文讲解了pg_class、pg_attribute、pg_attrdef、pg_authid、pg_auth_members、pg_constraint、pg_tablespace、pg_namespace、pg_database等表的作用和字段介绍,需要的朋友可以参考下
    2015-05-05
  • Postgresql 查看SQL语句执行效率的操作

    Postgresql 查看SQL语句执行效率的操作

    这篇文章主要介绍了Postgresql 查看SQL语句执行效率的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02

最新评论