PostgreSQL枚举类型是否仅支持text值?求文档依据确认
PostgreSQL 14枚举类型值的规则
你猜的没错——PostgreSQL的枚举值必须是带单引号的字符串字面量,不能直接用无引号的数字。
你执行的语句报错,就是因为写了1,2,3这种无引号的数值,正确的写法应该是:
CREATE TYPE foo AS enum ('1', '2', '3');
在PostgreSQL 14官方文档的「CREATE TYPE」章节里,关于枚举类型的语法定义明确要求枚举值必须是单引号包裹的字符串:
CREATE TYPE name AS ENUM ( 'value1', 'value2', ... )
这里的value1、value2都被指定为带引号的字符串形式,没有允许直接使用数值类型的写法。
内容的提问来源于stack exchange,提问作者Kocka
相关产品推荐
相关产品推荐

