SELECT HSQLDB 中的 UUID()

SELECT UUID() in HSQLDB

有谁知道如何通过 HSQLDB 检索 UUID。

例如当我尝试

SELECT UUID();

通过 MYSQL 它工作正常。但同样的语句不适用于 HSQLDB。 以下方法实现了相应的目的

VALUES (UUID())

CALL(UUID())

SELECT UUID() FROM (VALUES(0)) t;

mysql 和 hsqldb 有相同的方法吗? HSQL 文档说 UUID 已被激活。 http://hsqldb.org/doc/guide/builtinfunctions-chapt.html

谢谢。

Is there a way which is same for mysql and hsqldb?

我唯一能想到的办法。
在 HSQLDB

中创建一个 table DUAL
CREATE TABLE DUAL (
  id INT
);

所以你可以使用

SELECT UUID() FROM DUAL LIMIT 1;

那么查询在 MySQL 和 HSQLDB 中应该是一样的。
MySQL 中的 DUAL 是一个不存在的虚拟对象 table。

在 HSQLDB 中打开 MySQL 兼容模式,它将允许您的 SELECT 语句:

http://hsqldb.org/doc/2.0/guide/compatibility-chapt.html#coc_compatibility_mysql