概述
平常创建表的时候,都是 字段名 string 或者 字段名 int
今天将字段名设置为char时,报了这个错误ParseException line 6:26 mismatched input ‘,’ expecting ( near ‘char’ in primitive type specification,想了好一会才想起来,char类型的后面需要跟上括号,括号里面是字段值占用的字节量上限
create table data_order(
orderid string,
orderCustomerType char(20),
)row format delimited fields terminated by '$$';
像这样,将 char 改为 char(20),否则报错
开了这篇博客,光写这个错误有点少,顺便收集一下hive的数据类型的相关博客
- varchar与char的区别
摘自 hive—基本类型中,varchar(20)与char(20)的区别
Hive中varchar与char都是用来存储字符串。
两者区别是:
varchar属于可变长的字符类型。
char属于固定长度的字符类型。
假定声明了varchar(20)与char(20)两种数据类型,当存入的字符占用小于20时,声明为varchar的字符只占用足够表示它的那些字符空间;而char则仍然占满20个字节空间,用空格填充。
- 数据类型 hive
hive wiki LanguageManual Types
Hive数据类型
Hive之数据类型
最后
以上就是纯真硬币为你收集整理的hive踩坑笔记 —— ParseException line 6:26 mismatched input ‘,‘ expecting ( near ‘char‘ in primitive type的全部内容,希望文章能够帮你解决hive踩坑笔记 —— ParseException line 6:26 mismatched input ‘,‘ expecting ( near ‘char‘ in primitive type所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复