我想在Postgresql 9.1.5中更改枚举类型中的项目的名称。
这是类型的创建stmt:
CREATE TYPE import_action AS ENUM ('Ignored','Inserted','Updated','Task created');
我只是想将“任务创建”改为“中止”。似乎从documentation,以下应该工作:
ALTER TYPE import_action RENAME ATTRIBUTE "Task created" TO "Aborted";
但是,我得到一个msg:
********** Error ********** ERROR: relation "import_action" does not exist sql state: 42P01
但是,它确实存在。
该类型当前被多个表使用。
我正在想,不能有办法做到这一点。我已经尝试了pgAdminIII中的类型的对话框,但是没有办法可以在那里重命名它。 (所以,强烈的提示,我无法做到这一点,或者 – 我希望 – 一个小的监督是开发者创建的对话)
如果我不能在一个档案中做到这一点那我该怎么办?我必须写一个脚本来添加项目,将所有的记录更新为新的值,然后删除旧的项目?愿意甚至工作吗?
看来这应该是一件简单的事情。据了解,记录只是存储对类型和项目的引用。我不认为他们实际上存储了我给出的文本值。但是,也许我也错了。