【问题标题】:Cloudera Hue - cannot recognize input near 'WITH' 'SERDEPROPERTIES' '(' in serde properties specificationCloudera Hue - 在 serde 属性规范中无法识别“WITH”“SERDEPROPERTIES”“(”附近的输入
【发布时间】:2018-12-26 07:01:27
【问题描述】:

我正在尝试创建此表:

CREATE TABLE
    TABLE_DATA
    (
        A STRING,
        B STRING,
        C STRING,
        D STRING,
        E STRING,
        F STRING,
        G STRING,
        H STRING,
    )
    ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
    ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
    WITH SERDEPROPERTIES 
    (
       "separatorChar" = ",",
       "quoteChar"     = "\""
    )       
    STORED AS TEXTFILE LOCATION '...'
    TBLPROPERTIES ("skip.header.line.count"="1");

但是我遇到了一个问题:

编译语句时出错:FAILED: ParseException line 14:2 无法识别 SERDE 中 'WITH' 'SERDEPROPERTIES' '(' 附近的输入 属性规范

我该如何解决?

谢谢!

【问题讨论】:

  • 删除这个:STORED AS TEXTFILE 和这个:ROW FORMAT DELIMITED FIELDS TERMINATED BY ','

标签: hive ddl create-table hive-serde hiveddl


【解决方案1】:

ROW FORMAT 应指定一次,并删除最后一列后多余的逗号

CREATE TABLE TABLE_DATA
            (
                    A STRING,
                    B STRING,
                    C STRING,
                    D STRING,
                    E STRING,
                    F STRING,
                    G STRING,
                    H STRING
            )
            ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
            WITH SERDEPROPERTIES 
            (
               "separatorChar" = ",",
               "quoteChar"     = "\""
            )       
            LOCATION '...'
            TBLPROPERTIES ("skip.header.line.count"="1");

【讨论】:

    猜你喜欢
    • 2023-02-20
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 2015-03-10
    • 1970-01-01
    • 2022-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多