Amazon redshift 在红移中创建表失败

Amazon redshift 在红移中创建表失败,amazon-redshift,ddl,Amazon Redshift,Ddl,我转储了一个红移表,正在尝试还原它。但是,还原时出现错误。我甚至尝试手动运行CREATETABLE命令,但它产生了一个错误。我想不出是怎么回事。谢谢 CREATE TABLE report ( experiment_id bigint, offer_type character varying(50), variant_id bigint, variant_name character varying(256), active_lapsed charact

我转储了一个红移表,正在尝试还原它。但是,还原时出现错误。我甚至尝试手动运行CREATETABLE命令,但它产生了一个错误。我想不出是怎么回事。谢谢

CREATE TABLE report (
    experiment_id bigint,
    offer_type character varying(50),
    variant_id bigint,
    variant_name character varying(256),
    active_lapsed character varying(10),
    active_lapsed_new character varying(10),
    am_pm_dominance character varying(20),
    channel character varying(50),
    daypart character varying(20),
    marketable boolean,
    tcm character varying(5),
    vip_flag boolean,
    weekly_freq_over_8w double precision,
    product1 integer,
    product2 integer,
    product3 integer,
    product4 integer,
    product5 integer,
    reward1 integer,
    reward2 integer,
    reward3 integer,
    hurdle1 integer,
    hurdle2 integer,
    hurdle3 integer,
    product1_recommender character varying(50),
    product2_recommender character varying(50),
    product3_recommender character varying(50),
    product4_recommender character varying(50),
    product5_recommender character varying(50),
    product1_description character varying(100),
    product2_description character varying(100),
    product3_description character varying(100),
    product4_description character varying(100),
    product5_description character varying(100),
    microsegment integer,
    microsegment_desc character varying(100),
    tag character varying(50),
    error_tag character varying(25),
    vip_email character varying(50),
    count bigint,
    error_message character varying(1024),
    unlimited_redemption boolean,
    push_notification_flags character varying(60),
    weekend_3d_freq_over_8w double precision,
    experiment_group character varying(100),
    created_date date,
    automatic_hurdle_qty boolean DEFAULT false,
    product1_frequency double precision,
    product2_frequency double precision,
    product3_frequency double precision,
    product4_frequency double precision,
    product5_frequency double precision,
    weekly_freq_over_8w_after_2pm double precision,
    weekly_freq_over_8w_before_11am double precision,
    weekly_non_dominant_daypart_freq_over_8w double precision,
    automatic_product_qty boolean DEFAULT false,
    optimization_model character varying(21),
    control_bool boolean
);

这是我收到的错误

ERROR:  syntax error at or near "tag"
LINE 38:     tag character varying(50),

tag
是Amazon中的一个保留字,根据它们的名称进行红移

您可以通过双引号强制执行:

...
"tag" character varying(50),
...
但是,您必须始终双引号引用该列名。更干净的解决方案是避免保留字作为标识符


不确定如何使用不带引号的
标记
作为列名生成该转储。可能使用的
pg_dump
版本与数据库版本不匹配?

tag
在Amazon中是一个保留字,根据其属性进行红移

您可以通过双引号强制执行:

...
"tag" character varying(50),
...
但是,您必须始终双引号引用该列名。更干净的解决方案是避免保留字作为标识符

不确定如何使用不带引号的
标记
作为列名生成该转储。可能使用与数据库版本不匹配的
pg_dump