ETL工具—Kettle数据的导入导出—批量Excel表到数据库

案例目的:如果你有一堆收上来,表结构相同的Excel表格,把他们放在了一个文件夹下,向批量导入到数据库中的一个表中。那么下面的操作将非常适用。

这里用emp表为例子讲解,先进行一些准备工作。

数据库:Oracle

表格:  Excel表

准备工作:1.将Scott账户下的emp表格导出成Excel表格。复制几份。命名随意。(注:表格"HIREDATE"字段下年月日格式为yyyy/mm/dd,需要更改一下格式,                  不然后面"运行"会报错,比如个位数日期,要补零。例:2017/05/01)

     2.在自己的用户名(这里使用自建用户testuser做演示),下新建一张空emp表,字段及类型与Scott中的emp表一致。

 

图1:表格准备

图2:数据库emp表准备

 

步骤1:打开kettle工具,将图标拖进来

  1)、新建一个"转换",将"获取文件名"、"excel输入"、"表输出"三个图标拖进工作区。按住Shift键,鼠标拖拽"获取文件名"图标到"Excel输入"图标上,产生连线。同理"表输出"的线也脸上。注意箭头方向。别拉反了。

图3:整体情况图

步骤2:设置"获取文件名"相关内容

 

图4:设置文件路径及正则表达式

图5:显示查看能否显示出文件名列表

能显示出来就设置完成。

步骤3:设置"Excel输入"相关内容

 

图6:选择文件类型及文件夹中任意一个表的路径(增加之后列表中就出现了新增的路径)

图7:指定Sheet页

图8:获取字段名

图9:返回文件选项卡,继续设置

 

 设置完成后,"确定"就可以了。

步骤4:设置"表输出"相关内容

 

3.设置"表输出"相关参数

1)、双击"a"工作区(我将"转换1"保存命名了a)中的"表输出"的图标,打开设置窗口。

 图6:设置"数据库连接"的内容

图7:目标模式,选择testuser(意思是选用户名),目标表,选择该用户下的emp表

图8:设置字段映射

设置完成后,"确定"结束设置。

 

4.运行,将文件夹中Excel表格,批量导入到数据库。

图9:运行和启动

图10:查看运行结果

 

6.检验记录是否导入

图11:记录数是对的

结束!!!

 

 

 

 

posted @ 2017-05-22 14:53  DM_2  阅读(29777)  评论(0编辑  收藏  举报