sqoop导出oracle问题:Field names must be greater than 0

leo_1989 2012-05-31 11:52:42
用sqoop从hive导出数据到oracle遇到Field names must be greater than 0错误
oracle表:sqooptest(id varchar2(20),name varchar2(40));
hive表:create table testdata(id string,name string)row format delimited fields terminated by '\|';
导出脚本:
sqoop export --connect jdbc:oracle:thin:@192.168.21.105:1521:orcl --username hadoop --password hadoop1234 --table sqooptest --export-dir /user/hive/warehouse/testdata/ --input-fields-terminated-by "|"
错误信息如下:
12/05/30 16:21:15 ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.IllegalArgumentException: Field names must be greater than 0
java.lang.IllegalArgumentException: Field names must be greater than 0
at com.cloudera.sqoop.mapreduce.db.DBOutputFormat.setOutput(DBOutputFormat.java:205)
at com.cloudera.sqoop.mapreduce.JdbcExportJob.configureOutputFormat(JdbcExportJob.java:86)
at com.cloudera.sqoop.mapreduce.ExportJobBase.runExport(ExportJobBase.java:332)
at com.cloudera.sqoop.manager.OracleManager.exportTable(OracleManager.java:354)
at com.cloudera.sqoop.tool.ExportTool.exportTable(ExportTool.java:73)
at com.cloudera.sqoop.tool.ExportTool.run(ExportTool.java:110)
at com.cloudera.sqoop.Sqoop.run(Sqoop.java:144)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:180)
at com.cloudera.sqoop.Sqoop.runTool(Sqoop.java:218)
at com.cloudera.sqoop.Sqoop.main(Sqoop.java:228)
...全文
339 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
leo_1989 2012-05-31
  • 打赏
  • 举报
回复
问题已解决,是我没有把oracle的表名大写,网上找到的例子基本是mysql的,mysql的例子貌似都没有大写,但是具体什么原因我也不清楚。

20,808

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧