2016-07-10 7 views
-1

以下のコマンドを使用してハイブで表を作成しますが、エラーが発生します。csvファイルのためにHiveにテーブルを作成できません

CREATE TABLE TestData (id1 int, id2 int, id3 int, id4 String) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘,’ stored as textfile; 

エラー

FAILED: ParseException line 1:106 mismatched input ',' expecting StringLiteral near 'BY' in table row format's field separator 

私が '' '\ 054' の代わりのを試みたが、作業をしていません。

+0

最も可能性の高い原因は、「」ジャンク文字がクエリであるまでこれで問題が解決しない –

答えて

0

あなたが行が分離されているどのように言及しませんでした。..

編集: すなわち行

0

viエディタを通して見ることができる、オープンの目からは見えません時間もののほとんどは、 )。コマンドにcontrol charactersがあります。

cat -v file.txt 
    CREATE TABLE TestData (id1 int, id2 int, id3 int, id4 String) ROW FORMAT DELIMITED 
FIELDS TERMINATED BY M-bM-^@M-^X,M-bM-^@M-^Y stored as textfile; 

解決方法 - 貼り付けコマンドはコピーしないでください。

0

文字列型には、ハイブ内に2つのデータ型VARCHARとCHARが含まれています。 Stringの代わりにVARCHARまたはCHARのいずれかを使用すると、問題が解決されます。

* varcharを指定しているときのサイズについても忘れないでください。

例:CREATE TABLE TestData (id1 int, id2 int, id3 int, id4 varchar (65355)) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘,’ stored as textfile;問題の

+0

正しくないだろう。 – syadav

関連する問題