如果按模式名称添加,Postgres找不到枚举类型

时间:2014-04-02 13:20:48

标签: postgresql postgresql-9.2

在Postgres中执行查询时收到以下错误:

列“action”的类型为schemaname.enum_rights_actions,但表达式的类型为enum_rights_actions

这是与架构相关的问题吗?

alter database postgres set search_path=schemaname没有帮助。

1 个答案:

答案 0 :(得分:0)

解决方法。 该表的原始定义是:

CREATE TABLE rights_history(
    ...,
    action schemaname.enum_rights_actions,
    ...
);

我通过删除前置架构名称来更改表的定义:

CREATE TABLE rights_history(
    ...,
    action enum_rights_actions,
    ...
);

这有帮助。 DDL SQL是使用pgmodeler生成的。