加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

利用kettle工具 sqlserver2008导入oracle数据

发布时间:2020-12-12 14:08:14 所属栏目:MsSql教程 来源:网络整理
导读:1.前言 ?? 由于工作需要,需将oracle的数据导入到sqlserver2008,经同事推荐使用kettle工具。 ? 2.kettle简介 ? kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定。 ? kettle中有两种脚本文件,transformation和job,transformat

?

?? 2)连接SqlServer问题:用JDBC始终不成功,最后改用ODBC连接。

?

?? 3)两库中表某字段类型不同:oracle中的blob类型--》sqlserver中的varbinary类型,最终改为image类型。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

1.前言

?? 由于工作需要,需将oracle的数据导入到sqlserver2008,经同事推荐使用kettle工具。

?

2.kettle简介

? kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定。

? kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。

? 这里我们只用transformation完成针对数据的基础转换。

?

3.图文操作

? 1)开启kettle工具

? 将kettle4.1.0文件夹拷贝到本地路径,例如D盘根目录。

? 双击运行kettle文件夹下的spoon.bat文件,进入kettle主页面:

??

?? 关闭Repository Connection窗口

?

?? 2)创建transformation

?????? 主窗口左上角“文件”--》“新建”--》“转换”,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为 EtlTestTrans,默认后缀为ktr.

?

? 3)创建Oracle连接

?? 在transformation页面下,点击左边的“主对象树”,双击“DB连接”进行数据库连接配置。如图:

??

?? Connection Name 自命名连接名称

?? Connection Type选择需要连接的数据库

?? Host Name 数据库服务器的ip地址

?? DataBase Name 数据库名称

?? Port Number 端口号

?? User Name 用户名

?? Password 密码

??

?? 填写内容如下:

??

?? 填写完后,点击按钮“Test”.

??

?? 如图上,表示连接成功。点击确定,然后点击保存数据库连接。

? 4)创建SqlServer连接

??? 与创建Oracle连接大同小异,如图:

??

?? ODBC DSN Source Name 数据源名称

?? 这里我用的是ODBC连接,需要配置数据源:

?? 控制面板--管理工具--数据源(ODBC)--系统DNS--添加--……

?? 5)表输入

????? 核心对象--输入--表输入,将表输入 拖到右边的主窗口,双击表输入如图:

??

??? 自命名表输入名称,数据库连接下拉框选择etltest数据库(步骤3. 3)的oracle连接),

??? 点击“获取SQL查询语句”,弹出框:

???

?? 双击你要导出数据的表,点击确定。

?

?? 6)字段选择

???? 核心对象--转换--字段选择,将字段选择 拖到右边的主窗口,

???? 按住SHIFT键,用鼠标创建的表输入,拖动到字段选择上,则建立了两个环节之间的连接。

?????

?????? 双击字段选择,在下图窗口中“选择和修改”和“元数据”tab页分别点击获取选择的字段按钮,然后确定。

?????????

?? 7)表输出

??? 与表输入大同小异。

???

???

???

?

4.遇到的问题

?? 1)连接Oracle问题:注意Database Name,是配置文件TNSNAMES.ORA中数据库的配置名称。

    推荐文章
      热点阅读