注册

Sqoop将hdfs上的文件导出到达梦,达梦目标表数据类型为date时无法识别yyyy-mm-dd格式的内容

Z 2022/04/21 1442 1

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: 8
【操作系统】:Centos7.6
【CPU】: Intel x86
【问题描述】*:c2897142d0a17078d3ca843f5d6567a3.jpg
各位老师好,我在使用sqoop将hdfs的文件导出到达梦时,当目标表含有date类型时,数据文件对应的内容格式必须带时分秒,如图所示,但是按照内部规范,数据文件date类型的格式必须只有年月日,如yyyymmdd、yyyy-mm-dd等格式,因此无法从修改数据文件内容的角度解决。
Sqoop导出到Oracle也有类似的问题,网上提供了2种解决方法
第一种方法:
通过–map-column-java DATE_COLUMN_1=java.sql.Date,DATE_COLUMN_2=java.sql.Date的方式指定具体字段为java.sql.Date
第二种方法:
通过–connection-param-file conn-param-file.txt ,conn-param-file.txt的内容为oracle.jdbc.mapDateToTimestamp=false来进行全局的配置
经过验证,第一种方法达梦也适用,但是由于还需要将date类型的字段单独列出来,工作量较大,不像第二种方式便捷。因此想请教下各位达梦的jdbc有没有类似Oracle的oracle.jdbc.mapDateToTimestamp参数,谢谢。

回答 0
暂无回答
扫一扫
联系客服