【发布时间】:2013-03-17 08:31:30
【问题描述】:
我们在表中有一个 varchar 列,我们需要将其升级为枚举类型。
varchar 列中的所有值都是枚举中的有效值。 varchar 列中没有空值。
ALTER TABLE tableName
ALTER COLUMN varcharColumn TYPE enum_type
错误:列“varcharColumn”不能转换为类型 enum_type SQL 状态:42804
迂回的方法是
- 使用枚举类型创建另一个新列。
- 在类型转换后用 varchar 列更新枚举类型列。
- 删除 varchar 列。
- 将枚举类型列名重命名为 varchar 列名。
有没有更好的方法来实现这一点?
提前致谢。
【问题讨论】:
标签: sql database postgresql ddl