HSQLDB - ON UPDATE CURRENT_TIMESTAMP with TIMESTAMP column

Posted

技术标签:

【中文标题】HSQLDB - ON UPDATE CURRENT_TIMESTAMP with TIMESTAMP column【英文标题】: 【发布时间】:2019-05-22 09:21:54 【问题描述】:

有了这个表定义:

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

当更新行时,C1 设置为当前的 UTC 时间戳

这就是我想要的,但是我想知道这是否也是 HSQLDB 的预期行为,因为 CURRENT_TIMESTAMP 返回一个 TIMESTAMP WITH TIME ZONE 类型的值。

【问题讨论】:

【参考方案1】:

HSQLDB 实施 ISO SQL:2016 标准。 LOCALTIMESTAMP 和 CURRENT_TIMESTAMP 是标准函数,分别返回 WITHOUT 或 WITH TIME ZONE 的 TIMESTAMP 值。该标准要求在有或没有时区的 TIMESTAMP 值之间进行静默双向转换。因此,从 CURRENT_TIMEZONE 返回的值将转换为没有时区的值。这是通过丢弃时区信息来完成的。

【讨论】:

以上是关于HSQLDB - ON UPDATE CURRENT_TIMESTAMP with TIMESTAMP column的主要内容,如果未能解决你的问题,请参考以下文章

Hibernate Update 在 HSQLDB 中转换删除/插入

如何从 SELECT 加速 HSQLDB UPDATE?

如何将 HSQLDB 与 Ruby on Rails 一起使用。

如何在 hsqldb 2.3.4 上使用 ON DUPLICATE KEY

hsqldb 内部事件日志配置

如何以不同的方式将 group_concat 添加到 hsqldb?