hive 创建表,字段为中文时,报错:
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Add request failed : INSERT INTO `COLUMNS_V2` (`CD_ID`,`COMMENT`,`COLUMN_NAME`,`TYPE_NAME`,`INTEGER_IDX`) VALUES (?,?,?,?,?) )
经分析,当以mysql为元数据时,表的编码格式为:latin1,然而实际mysql的编码格式为utf-8,并不识别latin1.故修改hive库下 表 COLUMNS_V2的编码格式为:utf-8
alter table COLUMNS_V2 modify column COLUMN_NAME varchar(128) character set utf8;
之后在hive 终端运行创建语句成功。
OK
Time taken: 0.08 seconds