以下命令失败:
sqoop导入-d mapreduce.output.basename= date +%Y%m%d%H%M%S
--“连接”jdbc:sqlserverhttp://segotn15915.vcn.ds.volvo。net:1433;databasename=lat;加密=假;integratedsecurity=false;sslprotocol=tlsv1.2;trustservercertificate=true;authenticationscheme=nativeauthentication;user=datastage\u读取器;password=$datastage\u reader”--hcatalog数据库$dst\u schema--hcatalog表$dst\u table\u name--查询'select*where$conditions'--按teacoredtcfailurecomponent\u id拆分
出现错误时:
错误tool.importtool:运行导入作业时遇到ioexception:java.io.ioexception:在检查hcatalog表中的数据库列standarizedtext时捕获到异常。
standarizedtext列包含带引号的内容,例如:换档电磁阀“a”,我怀疑这就是问题所在。在dbeaver sql中运行查询可以正常工作。
以下版本也成功完成:
sqoop导入-d mapreduce.output.basename= date +%Y%m%d%H%M%S
--“连接”jdbc:sqlserverhttp://segotn15915.vcn.ds.volvo。net:1433;databasename=lat;加密=假;integratedsecurity=false;sslprotocol=tlsv1.2;trustservercertificate=true;authenticationscheme=nativeauthentication;user=datastage\u读取器;password=$datastage\u reader--hcatalog数据库$dst\u schema--hcatalog表$dst\u table\u name--query‘select teacoredtcfailurecomponent\u id,diagnosticobjectid,teacorecaption\u id,textcaption from teacoredtcfailurecomponent where$conditions’--按teacoredtcfailurecomponent\u id拆分
但是当我尝试添加standarizedtext时失败了。
所以,我的问题是,如何在导入过程中抑制standarizedtext中的双引号?我尝试了各种迭代--字段以结束,-转义为--用''括起来,但都没有成功。
或者,我是不是完全搞错了,对于这个问题有没有其他简单的解释和解决方案?
谢谢!!
暂无答案!
目前还没有任何答案,快来回答吧!