PostgreSQL:使用默认时间戳插入sql语句 - dbeaver vs php

时间:2017-02-24 15:35:46

标签: php linux postgresql dbeaver sql-timestamp

鉴于这个简单的表格:

create table comments (
  id numeric not null,
  comment text, 
  created timestamp not null default now()
);

直接在我的电脑上使用dbeaver,然后执行此语句

insert into comments (id, comment)
select 1111, 'test';

新记录的“已创建”字段为:2017-02-24 16:17:21 那是我正确的时间(CET)。

当我从php脚本运行相同的语句(在连接到db的基于linux的web服务器上运行)时,结果为2017-02-24 15:17:21。 linux服务器时间正常(即CET)。

我错过了什么?

1 个答案:

答案 0 :(得分:0)

根据this link的答案,将您的表格定义更改为

create table comments (
   id numeric not null,
   comment text, 
   created timestamp not null default (now() at time zone ('CET'))
);

将使用所需时区使用当前日期时间。