You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HSQLDB执行VALUES(UUID())得到无格式UUID,如何获取格式化UUID?

获取HSQLDB格式化UUID的方法

当然有办法获取带标准分隔符的格式化UUID啦!HSQLDB提供了专门的内置函数来处理这个需求:

推荐方案:使用UUID_TO_CHAR()函数

这是最简洁可靠的方式,HSQLDB的UUID_TO_CHAR()函数可以直接将原生无格式的UUID转换为符合RFC 4122标准的带横杠格式字符串。执行以下语句即可:

VALUES (UUID_TO_CHAR(UUID()))

执行后会返回类似这样的结果:550e8400-e29b-41d4-a716-446655440000

兼容旧版本的手动拼接方案

如果你使用的是较旧版本的HSQLDB(未提供UUID_TO_CHAR()函数的版本),可以通过字符串截取和拼接的方式实现。不过要注意先把生成的UUID存到变量里,避免多次调用UUID()生成不同的值:

DECLARE @uuid CHAR(32);
SET @uuid = UUID();
VALUES (CONCAT(
    SUBSTRING(@uuid FROM 1 FOR 8), '-',
    SUBSTRING(@uuid FROM 9 FOR 4), '-',
    SUBSTRING(@uuid FROM 13 FOR 4), '-',
    SUBSTRING(@uuid FROM 17 FOR 4), '-',
    SUBSTRING(@uuid FROM 21 FOR 12)
))

内容的提问来源于stack exchange,提问作者Petrik Anderson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:51:08