HSQLDB - ON UPDATE CURRENT_TIMESTAMP со столбцом TIMESTAMP - PullRequest
0 голосов
/ 22 мая 2019

С этим определением таблицы:

CREATE TABLE T1 (C1 TIMESTAMP DEFAULT NOW() ON UPDATE CURRENT_TIMESTAMP NOT 
NULL);

при обновлении строки C1 устанавливается на текущую метку времени UTC.

Это то, что я хочу, однако мне было интересно, является ли это также предполагаемым поведением HSQLDB, поскольку CURRENT_TIMESTAMP возвращает значение типа TIMESTAMP WITH TIME ZONE.

1 Ответ

1 голос
/ 22 мая 2019

HSQLDB реализует стандарт ISO SQL: 2016. LOCALTIMESTAMP и CURRENT_TIMESTAMP являются стандартными функциями и возвращают значения TIMESTAMP БЕЗ или С ВРЕМЕННОЙ ЗОНОЙ соответственно. Стандарт предписывает бесшумное двустороннее преобразование между значениями TIMESTAMP с часовым поясом или без него. Поэтому значение, возвращаемое из CURRENT_TIMEZONE, преобразуется в значение без часового пояса. Это делается путем отбрасывания информации о часовом поясе.

...