1. 需求說明:sql
實現MYSQL中有on update CURRENT_TIMESTAMP數據庫
2. 需求分析post
因爲數據庫遷移須要將MYSQL中的數據遷移到postgresSQL中,因爲MYSQL中有on update CURRENT_TIMESTAMP這種功能可是PostgresSQL中並無。須要尋找一個代替方法來作,採用觸發器,來進行更新測試
3. 實現blog
1. 表的結構以下class
CREATE TABLE users ( id serial not null, name varchar(100), email varchar(200), updated_time timestamp )
須要實現的功能,當數據更新的時候,將updated_time字段進行更新email
2. 建立觸發器更新該字段date
CREATE OR REPLACE FUNCTION "upd_timestamp"() RETURNS TRIGGER AS $$ BEGIN NEW.updated_time = now(); RETURN NEW; END; $$ language 'plpgsql';
3. 在表中添加對應的觸發器方法
CREATE TRIGGER "updated_time" BEFORE UPDATE ON "users" FOR EACH ROW EXECUTE PROCEDURE "upd_timestamp"();
4. 測試便可im