vverr
V2EX  ›  问与答

hive 建表语句提示不能包含 dot 如何破。。。

  •  
  •   vverr · Apr 8, 2021 · 1779 views
    This topic created in 1885 days ago, the information mentioned may be changed or developed.

    之前集群一直好的,最近装了新的,hdp-hive-3.1.0.


    CREATE EXTERNAL TABLE `ods.a2`(
      `key` string COMMENT 'k', 
      `value` string COMMENT 'v')
    COMMENT '注释'
    ROW FORMAT SERDE
    'org.apache.hadoop.hive.contrib.serde2.MultiDelimitSerDe'
    WITH SERDEPROPERTIES (
      'field.delim'=',,', 
      'serialization.format'=',,') 
    STORED AS INPUTFORMAT 
    'org.apache.hadoop.mapred.TextInputFormat' 
    OUTPUTFORMAT 
    'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
    LOCATION
    'hdfs:///user/hive/warehouse/ods.db/a2';
    

    err:

    Error: Error while compiling statement: FAILED: SemanticException Line 1:22 Table or database name may not contain dot(.) character 'ods.a2' (state=42000,code=40000)
    

    有一个办法是这样 CREATE EXTERNAL TABLE ods.a2 但是之前一直是可以的,不想改,而且一些手动 set 的 hive 属性都带 dot,都无法使用。

    2 replies    2021-04-22 10:50:40 +08:00
    SErHo
        1
    SErHo  
       Apr 8, 2021   ❤️ 1
    `ods.a2` -> `ods`.`a2`
    vverr
        2
    vverr  
    OP
       Apr 22, 2021
    @SErHo #1 感谢,之前`ods.a2`就可以,不知道为啥我重装了下,就不支持了,只支持`ods`.`a2`这种了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2845 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 08:18 · PVG 16:18 · LAX 01:18 · JFK 04:18
    ♥ Do have faith in what you're doing.