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

PostgreSQL 12.12使用gen_random_uuid()报错的解决方法咨询

解决PostgreSQL 12.12中gen_random_uuid()不存在的问题

gen_random_uuid()函数属于PostgreSQL的pgcrypto扩展,默认并未启用,这是导致报错的核心原因。按以下步骤处理:

  • 首先执行SQL启用pgcrypto扩展(需确保当前用户拥有创建扩展的权限,比如超级用户权限):
CREATE EXTENSION IF NOT EXISTS pgcrypto;
  • 验证扩展是否生效,可执行测试语句:
SELECT gen_random_uuid();

若能正常返回UUID值,说明扩展启用成功。

  • 最后重新执行你的建表语句即可:
CREATE TABLE IF NOT EXISTS lists
(
    id uuid DEFAULT gen_random_uuid(),
    -- 其他字段定义
);

如果不想依赖pgcrypto扩展,也可以使用uuid-ossp扩展提供的uuid_generate_v4()函数,步骤类似:

CREATE EXTENSION IF NOT EXISTS "uuid-ossp";

之后将建表语句中的gen_random_uuid()替换为uuid_generate_v4()即可。

内容的提问来源于stack exchange,提问作者Peter Penzov

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 05:42:35