Hive創建表:FailedPredicateException(identifier,{useSQL11ReservedKeywordsForIdentifier()}?)

FailedPredicateException(identifier,{useSQL11ReservedKeywordsForIdentifier()}?)

先給出解決辦法,喜歡看案例的可以看下面的案例:

你在創建表的時候,使用了Hive的關鍵字作爲字段,這樣肯定會報錯呀!!!

錯誤信息:

在這裏插入圖片描述

錯誤的語句:

CREATE TABLE serde_regex1(
  host STRING,
  identity STRING,
  user STRING,
  time STRING,
  request STRING,
  status STRING,
  size STRING,
  referer STRING,	
  agent STRING)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
  "input.regex" = "([^ ]*) ([^ ]*) ([^ ]*) (-|\\[[^\\]]*\\]) ([^ \"]*|\"[^\"]*\") (-|[0-9]*) (-|[0-9]*)(?: ([^ \"]*|\"[^\"]*\") ([^ \"]*|\"[^\"]*\"))?",
  "output.format.string" = "%1$s %2$s %3$s %4$s %5$s %6$s %7$s %8$s %9$s"
)
STORED AS TEXTFILE;

改正後:user是關鍵字,不能作爲字段使用!!!

CREATE TABLE serde_regex1(
  host STRING,
  identity STRING,
  t_user STRING,
  time STRING,
  request STRING,
  status STRING,
  size STRING,
  referer STRING,	
  agent STRING)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
  "input.regex" = "([^ ]*) ([^ ]*) ([^ ]*) (-|\\[[^\\]]*\\]) ([^ \"]*|\"[^\"]*\") (-|[0-9]*) (-|[0-9]*)(?: ([^ \"]*|\"[^\"]*\") ([^ \"]*|\"[^\"]*\"))?",
  "output.format.string" = "%1$s %2$s %3$s %4$s %5$s %6$s %7$s %8$s %9$s"
)
STORED AS TEXTFILE;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章