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 中转换删除/插入
如何将 HSQLDB 与 Ruby on Rails 一起使用。