【发布时间】:2018-09-18 10:25:12
【问题描述】:
我的列是'enum_type'。我使用查询:
ALTER TABLE subscriptions
ALTER COLUMN subscribable_type TYPE enum('User', 'Organization');
将类型从字符串更改为枚举。但它不起作用并且失败:
[42704] 错误:类型“枚举”不存在
【问题讨论】:
-
你不应该一开始就使用枚举。使用带有外键的正确查找表。如果您只想限制允许的值,请改用检查约束。
-
你可以像这样使用它:CREATE TYPE subscription_type AS ENUM ('User', 'Organization'); ALTER TABLE 订阅 ALTER COLUMN subscribable_type TYPE subscription_type USING subscribable_type::subscription_type;
标签: postgresql