案例目的:当Excel中有几万条记录或者更多数据时,使用Kettle导入到数据库中。速度就能感到比复制粘贴快很多。
- 这里我会演示将"data.xlsx"表中数据有15万多条记录,使用Kettle导入到oracle数据库的testuser用户下。
准备工作:1.data.xlsx表;
2.testuser用户下要有一个与data.xlsx表结构(列数与字段类型)相同的表。
开始!!!
1.新建一个"转换",将"Excel输入"、"表输出"拖拽到新建的转换工作空间里
"文件">"新建">"转换"打开下图,并展开左侧面板中的"输入"与"输出",将"Excel输入"与"表输出"拖拽到"转换1"工作区中。如图1所示:
图1:工作区拖拽了"Excel输入"与"表输出"效果图
2.设置"Excel输入"相关参数
1)、双击"转换1"工作区中的"Excel输入"的图标,打开设置窗口。
图2:填写"表类型"与"文件或目录"两行的内容
图3:点击增加后,目录就会在"选中的文件"中出现了
图4:我的数据在sheet1中,那就把sheet1选进列表中
图5:打开"字段"选项卡,点击"获取来自头部数据的字段",注意时间字段格式的正确性
3.设置"表输出"相关参数
1)、双击"a"工作区(我将"转换1"保存命名了a)中的"表输出"的图标,打开设置窗口。
图6:设置"数据库连接"的内容
图7:设置"目标模式"
图8:设置"目标表"
图9:设置本地表与数据库表的映射(也就是字段是否对应正确)
设置完成后点击"确定"完成设置。
4.运行,将表导入到数据库中。
图10:运行和启动
图11:检测运城结果
注:如果"步骤度量"中出现红色底纹,表示导入失败。查看日志中的提示。个人经验,最常出现的报错是,在"Excel输入"设置中,字段类型里日期型字段,被设置成了字符型。
结束!!!