欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PostgreSQL更新表時時間戳不會自動更新的解決方法

 更新時間:2017年10月20日 14:45:55   作者:Mike_Zhang  
這篇文章主要為大家詳細(xì)介紹了PostgreSQL更新表時時間戳不會自動更新的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下

PostgreSQL更新表時時間戳不會自動更新的解決方法,具體如下

操作系統(tǒng):CentOS7.3.1611_x64

PostgreSQL版本:9.6

問題描述

PostgreSQL執(zhí)行Insert語句時,自動填入時間的功能可以在創(chuàng)建表時實(shí)現(xiàn),但更新表時時間戳不會自動自動更新。

在mysql中可以在創(chuàng)建表時定義自動更新字段,比如 :

create table ab (
 id int,
 changetimestamp timestamp
  NOT NULL
  default CURRENT_TIMESTAMP
  on update CURRENT_TIMESTAMP
);

那PostgreSQL中怎么操作呢?

解決方案

通過觸發(fā)器實(shí)現(xiàn),具體如下:

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

drop table if exists ts;
create table ts (
  id   bigserial primary key,
  tradeid integer ,
  email varchar(50),
  num integer,
  modified timestamp default current_timestamp
);
create trigger t_name before update on ts for each row execute procedure upd_timestamp();


測試代碼:

insert into ts (tradeid,email,num) values (1223,'mike_zhang@live.com',1);
update ts set email='Mike_Zhang@live' where tradeid = 1223 ;

create unique index ts_tradeid_idx on ts(tradeid);
insert into ts(tradeid,email,num) values (1223,'Mike_Zhang@live.com',2) on conflict(tradeid) do update
set email = excluded.email,num=excluded.num;

select * from ts;
-- delete from ts;

好,就這些了,希望對你有幫助。

本文github地址。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Postgresql 解決pg掉電后無法重啟的問題

    Postgresql 解決pg掉電后無法重啟的問題

    這篇文章主要介紹了Postgresql 解決pg掉電后無法重啟的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • 在PostgreSQL中使用ltree處理層次結(jié)構(gòu)數(shù)據(jù)的方法

    在PostgreSQL中使用ltree處理層次結(jié)構(gòu)數(shù)據(jù)的方法

    這篇文章主要介紹了在PostgreSQL中使用ltree處理層次結(jié)構(gòu)數(shù)據(jù),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • pgsql鎖表后kill進(jìn)程的操作

    pgsql鎖表后kill進(jìn)程的操作

    這篇文章主要介紹了pgsql鎖表后kill進(jìn)程的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • PostgreSQL 中的postgres_fdw擴(kuò)展詳解

    PostgreSQL 中的postgres_fdw擴(kuò)展詳解

    這篇文章主要介紹了PostgreSQL 中的postgres_fdw擴(kuò)展詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • postgresql中時間轉(zhuǎn)換和加減操作

    postgresql中時間轉(zhuǎn)換和加減操作

    這篇文章主要介紹了postgresql中時間轉(zhuǎn)換和加減操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • pgsql批量修改sequences的start方式

    pgsql批量修改sequences的start方式

    這篇文章主要介紹了pgsql批量修改sequences的start方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • 使用PostGIS完成兩點(diǎn)間的河流軌跡及流經(jīng)長度的計(jì)算(推薦)

    使用PostGIS完成兩點(diǎn)間的河流軌跡及流經(jīng)長度的計(jì)算(推薦)

    這篇文章主要介紹了使用PostGIS完成兩點(diǎn)間的河流軌跡及流經(jīng)長度的計(jì)算,使用POSTGIS及其擴(kuò)展pgrouting計(jì)算給定兩點(diǎn)間的河流流經(jīng)區(qū)域和河流長度,需要的朋友可以參考下
    2022-01-01
  • Postgresql開啟SQL執(zhí)行語句收集過程

    Postgresql開啟SQL執(zhí)行語句收集過程

    本文介紹如何修改PostgreSQL的配置文件來啟用SQL執(zhí)行語句的日志記錄,包括打開配置文件、修改日志相關(guān)設(shè)置以及查看日志文件的方法,關(guān)鍵步驟包括刪除注釋符號、設(shè)定日志存儲路徑和文件名、選擇記錄的SQL語句類型,此操作有助于數(shù)據(jù)庫管理和問題調(diào)試
    2024-10-10
  • PostgreSQL模式匹配與正則表達(dá)式方法總結(jié)

    PostgreSQL模式匹配與正則表達(dá)式方法總結(jié)

    在postgresql中使用正則表達(dá)式時需要使用關(guān)鍵字“~”,以表示該關(guān)鍵字之前的內(nèi)容需匹配之后的正則表達(dá)式,這篇文章主要給大家介紹了關(guān)于PostgreSQL模式匹配與正則表達(dá)式的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Postgresql - 查看鎖表信息的實(shí)現(xiàn)

    Postgresql - 查看鎖表信息的實(shí)現(xiàn)

    這篇文章主要介紹了Postgresql 查看鎖表信息的實(shí)現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12

最新評論