- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我运行下一个 SQL (JDBC)
CREATE TABLE IF NOT EXISTS PUBLIC.MY_DATA(
ID BIGINT IDENTITY PRIMARY KEY NOT NULL,
...,
LAST_MODIFIED BIGINT DEFAULT UNIX_MILLIS() NOT NULL)
并获取 SQLSyntaxErrorException:意外标记:UNIX_MILLIS
但是根据documentation
UNIX_MILLIS ( [ ] )
This function returns a BIGINT value. With no parameter, it returns the number of milliseconds since 1970-01-01. With a DATE or TIMESTAMP parameter, it converts the argument into number of milliseconds since 1970-01-01. (HyperSQL)
感谢任何帮助
最佳答案
查看 DEFAULT
的定义子句(在 table creation 中),并且其中允许的内容仅限于
<default option> ::= <literal> | <datetime value function> | USER
| CURRENT_USER | CURRENT_ROLE | SESSION_USER | SYSTEM_USER |
CURRENT_CATALOG | CURRENT_SCHEMA | CURRENT_PATH | NULL
和<datetime value function>
定义为
datetime value function
<datetime value function> ::= ...
Specify a function that returns a datetime value. The supported datetime value functions are listed and described in the Built In Functions chapter.
如UNIX_MILLIS
不返回日期时间值,而是返回 BIGINT
,完全有可能UNIX_MILLIS
不被视为<datetime value function>
,因此在 DEFAULT
中不可用条款。
这似乎可以通过查看 parser of the default clause 得到支持。 ,它根据结果类型过滤允许的表达式。
作为提示,我尚未对其进行测试,但启用 PostgreSQL 兼容模式可能允许您使用 DEFAULT UNIX_TIME()
或者也许DEFAULT (UNIX_TIME())
.
关于java - HSQLDB 2.4 如何使用 UNIX_MILLIS() 作为 BIGINT 列的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60185738/
我运行下一个 SQL (JDBC) CREATE TABLE IF NOT EXISTS PUBLIC.MY_DATA( ID BIGINT IDENTITY PRIMARY KEY NOT NULL
我是一名优秀的程序员,十分优秀!