linux — PostgreSQL: вставить оператор SQL с отметкой времени по умолчанию — dbeaver против переполнения стека

Учитывая эту простую таблицу:

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 (запущенного на веб-сервере на основе Linux, подключенном к базе данных), результат 2017-02-24 15:17:21,
Время сервера linux в порядке (то есть CET).

Что мне не хватает?

1

Решение

Согласно ответу на эта ссылка, измените определение таблицы на

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

который будет использовать текущую дату и время, используя нужный часовой пояс.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]