在MySQL中可以在創(chuàng)建表時(shí)定義自動(dòng)更新字段,比如 :
注意時(shí)間戳字段tmv的長(zhǎng)度為0
create table ab ( id int, tmv timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP );
在PostgreSQL中可以在創(chuàng)建表時(shí)定義自動(dòng)更新字段,比如 :
通過(guò)觸發(fā)器實(shí)現(xiàn),具體如下:
1、創(chuàng)建函數(shù)(注意tmv就是時(shí)間戳字段):
create or replace function upd_timestamp() returns trigger as $$ begin new.tmv= current_timestamp; return new; end $$ language plpgsql;
2、創(chuàng)建測(cè)試表(注意tmv就是時(shí)間戳字段)
drop table if exists test; create table test( name varchar(50), tmv timestamp default current_timestamp );
3、創(chuàng)建觸發(fā)器
create trigger t_name before update on test for each row execute procedure upd_timestamp();