我想在我的Postgres数据库中为枚举类型添加一个新值,但该类型已被各个字段使用。由于该类型已被使用,Postgres不会让我这样做。在Postgres中添加枚举类型
以前我已经做到了这一点:
- 使用类型 到一个临时varchar字段复制所有领域,
- 删除所有领域,并使用 型功能,
- 删除
- 创建一个新的类型与额外 枚举值,
- 设置全部 临时字段和函数返回使用枚举类型 。
在任何情况下都是一份很棒的工作,但如果在整个数据库中使用表格,视图和功能的类型数十次,这是一项不可能完成的重大任务。当然,为了仅为枚举类型添加一个新值,肯定有一个更简单的方法?
非常感谢您的帮助。
这可能不是您想要听到的答案:但这是您为非标准化设计付出的代价。将你的枚举值移到一个单独的表中并为其创建一个外键。添加一个新值就像向表中添加新行一样简单。 – 2011-03-13 23:06:39