遇到奇葩问题:用sqoop 把mysql导入hive报错,有些表导入正常,有些表报错

当前这个表,无论是orc,还是textfile都报错,其它表也有导入正常的。
这个表使用--table就没问题;
使用--query就会报错;主要是实际中我需要用这种方式导入

img


上面这个是全表导入的结果。

img


下面是报错信息:

img

img

img

img

img

img

改写这个字段后结果一样:

img

img

看错误提示,tradingday字段超了定义长度,文件中数据有问题吧

确实,很多时候是数据的问题,这个应该就是tradingDay字段只能存年月日不能存时间戳导致的。

你源数据是datetime类型,但目标表却是string类型。要么改目标表字段类型,要么导入的sql中对日期进行格式化处理转换成字符串类型

SELECT  date_format(`TradingDay`,'%Y-%m-%d %H:%i:%S') TradingDay