在PostgreSQL中更新行时更新时间戳

MysqL中,我们可以在每次更改行时更新列changetimestamp来执行此操作:
create table ab (
  id int,changetimestamp timestamp 
    NOT NULL 
    default CURRENT_TIMESTAMP 
    on update CURRENT_TIMESTAMP 
);

在Postgresql中有类似于上面的东西吗?

创建一个更新表的changetimestamp列的函数,如:
CREATE OR REPLACE FUNCTION update_changetimestamp_column()
RETURNS TRIGGER AS $$
BEGIN
   NEW.changetimestamp = Now(); 
   RETURN NEW;
END;
$$ language 'plpgsql';

在表上创建一个触发器,在发生更新时调用update_changetimestamp_column()函数

CREATE TRIGGER update_ab_changetimestamp BEFORE UPDATE
    ON ab FOR EACH ROW EXECUTE PROCEDURE 
    update_changetimestamp_column();

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...