ORALCE与MYSQL建表语句转换:
BI开发中中经常遇到各种数据库的导数据,操作频繁的有create建表语句,由于各种数据库的数据类型不同,若是字段特别多,手动敲建表语句也是很花费时间的。
新建文件--->转换--->DB连接。建立两个连接,分别是ORACLE与mysql的连接。
填写数据库连接信息。注意数据库名称为SID_NAME,并不是PL/SQL的SERVICE_NAME。
核心对象--->输入--->表输入直接拖到转换区。
同样的,核心对象--->输入--->表输入直接拖到转换区。按住shift,拖动从表输入到表输出。
点表输出:
点击SQL,就可以查看对应的mysql的建表语句。
这一小技巧可以省下很多时间。
遇到的错误:
错误连接数据库
org.pentaho.di.core.exception.KettleDatabaseException:
Error occurred while trying to connect to the database
Error connecting to database: (using class oracle.jdbc.driver.OracleDriver)
Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
Kettle使用的数据库名为”SID_NAME”,而pl/sql的”SERVICE_NAME”,
PL/SQL连接上数据库查看SID_NAME:
select INSTANCE_NAME from v$instance;