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

PostgreSQL创建整数类型枚举报错,为何无法创建?

PostgreSQL枚举类型创建报错问题解答

你执行的创建枚举语句:

create type oddNum as enum (1,3,5,7)

触发了语法错误:

ERROR: syntax error at or near "1" LINE 1: create type oddNum as enum (1,3,5,7)

问题根源在于PostgreSQL的枚举值必须以字符串字面量的形式定义,哪怕你想表示数字,也得用单引号包裹。虽然官方文档没直接说枚举仅限varchar类型,但枚举的底层实现基于字符串,所有枚举值都要求是字符串格式。

修正后的正确语句:

create type oddNum as enum ('1','3','5','7');

如果后续需要将这些枚举值当作数字使用,可在查询时做类型转换,示例:

select '1'::oddNum::integer;

内容的提问来源于stack exchange,提问作者Yashasvi.G

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 03:30:46