【发布时间】:2016-01-18 07:52:05
【问题描述】:
我正在尝试将数据从 mysql 移动到 postgres 表。所以我使用表输入步骤从 mysql 表中获取数据,并使用插入/更新步骤将数据插入到 postgres 表中。
postgres 表中有一个枚举数据类型。因此,当我尝试将数据插入该字段时,它会引发此错误:
2016/01/18 12:36:56 - Insert / Update.0 - ERROR: column "subject_classification" is of type subject_classification_type but expression is of type character varying
2016/01/18 12:36:56 - Insert / Update.0 - Hint: You will need to rewrite or cast the expression.
2016/01/18 12:36:56 - Insert / Update.0 - Position: 166
我知道这是一个转换问题,但我不知道如何将其转换为枚举数据类型。
这是表的表架构:
CREATE TABLE subject (
subject_id bigint NOT NULL,
created_at timestamp without time zone DEFAULT timezone('UTC'::text, now()) NOT NULL,
updated_at timestamp without time zone DEFAULT timezone('UTC'::text, now()) NOT NULL,
code character varying(2000) NOT NULL,
display_code character varying(2000) NOT NULL,
subject_classification subject_classification_type NOT NULL,
);
CREATE TYPE subject_classification_type AS ENUM (
'Math',
'Social Science',
'Language Arts'
);
请有人帮我解决这个问题。谢谢!
【问题讨论】:
标签: mysql postgresql enums pentaho kettle