如何使用php在postgresql表中插入timestampz值

时间:2011-08-11 11:51:48

标签: php postgresql timezone

我们在'timestampz'类型中有一个2字段,如createdon& updatedon

使用postgresql的“Now()”函数插入

createdon字段。

我需要使用php插入updatedon字段。 就像我尝试使用'date( 'Y-m-d H:i:s' , $timestamp );'插入一样。

当我尝试更新字段时,会给我错误的结果。

我想知道我想使用php插入时间戳,我该怎么做。

2 个答案:

答案 0 :(得分:3)

以下文章介绍了如何使用Postgres实现MySql的 timestamp 行为:

它的工作原理是创建一个触发器:

CREATE OR REPLACE FUNCTION trg_handle_timestamp() RETURNS TRIGGER AS $BODY$
BEGIN
IF NEW.y = OLD.y THEN NEW.y := now(); END IF;
RETURN NEW;
END;
$BODY$ LANGUAGE 'plpgsql';
CREATE TRIGGER trg_handle_timestamp 
BEFORE UPDATE ON test FOR EACH ROW EXECUTE PROCEDURE trg_handle_timestamp();

答案 1 :(得分:2)

你不能做一些像“UPDATE table SET ...,updatedon = NOW()WHERE ...”这样的事情吗?