将MySQL数据库的表全量导入Qracle中:
1、新建转换
2.连接Oracle
3、连接MySQL
4、拖动一个表输入和一个表输出至空白区,双击表输入,数据库连接选择MySQL(我这里名字叫tcc)
5、按住Shift键将两个连起来,双击表输出,选择数据库连接为Oracle(我这里名字叫ccadmin)
点击目标表---->浏览,选择要导入Oracle的表
6、选中指定数据库字段--->点击数据库字段----->点击获取字段
7、保存,执行,出现如下错误:
2015/12/08 16:53:01 - 表输出.0 - ERROR (version 5.4.0.1-130, build 1 from 2015-06-14_12-34-55 by buildguy) : Unexpected batch update error committing the database connection.
2015/12/08 16:53:01 - 表输出.0 - ERROR (version 5.4.0.1-130, build 1 from 2015-06-14_12-34-55 by buildguy) : org.pentaho.di.core.exception.KettleDatabaseBatchException:
2015/12/08 16:53:01 - 表输出.0 - Error updating batch
2015/12/08 16:53:01 - 表输出.0 - ORA-00904: "AS_OF_HOUR": 标识符无效
2015/12/08 16:53:01 - 表输出.0 -
2015/12/08 16:53:01 - 表输出.0 - at org.pentaho.di.core.database.Database.createKettleDatabaseBatchException(Database.java:1386)
2015/12/08 16:53:01 - 表输出.0 - at org.pentaho.di.core.database.Database.emptyAndCommit(Database.java:1375)
2015/12/08 16:53:01 - 表输出.0 - at org.pentaho.di.trans.steps.tableoutput.TableOutput.dispose(TableOutput.java:575)
2015/12/08 16:53:01 - 表输出.0 - at org.pentaho.di.trans.step.RunThread.run(RunThread.java:96)
2015/12/08 16:53:01 - 表输出.0 - at java.lang.Thread.run(Thread.java:662)
2015/12/08 16:53:01 - 表输出.0 - Caused by: java.sql.BatchUpdateException: ORA-00904: "AS_OF_HOUR": 标识符无效
错误显示AS_OF_HOUR这个标识符无效,检查Oracle数据库,发现没有AS_OF_HOUR这个字段
解决方法一:双击表输出--->数据库字段
删除AS_OF_HOUR这一行,保存
解决方法二:在Oracle数据库表中加上这个字段
修改后执行成功: