目录
一、使用Kettle导入Excel
二、表输出
三、作业
一、使用Kettle导入Excel
1、双击“转换”;
2、点击页签"核心对象",展开"输入"列表将"Excel输入"模块拖入右侧空白区域;
双击“Excel输入”模块,展开Excel输入配置界面
(1)在弹出框中选择“表格类型”为“Excel XLSX (Apache POI)”;
(2)点击“文件或目录“后的“浏览”选择需要导入的Excel表格,点击“增加”添加至选中文件列表中;
(3)单击“工作表”,在工作表页面选择“获取工作表名称”,选择相应的“可用项目”添加至“你的选择”中;
(4)单击“字段”,在字段页面点击“获取来自头部数据的字段”,(所以Excel表格最好带有列字段列名),并可以对获取的数据字段类型进行调整,可以点击“预览记录”查看数据;
二、表输出
1.双击“表输出”展开“表输出”链接配置页面;
2、双击“表输出”展开“表输出”链接配置页面。点击“数据库链接”后的“新建”按钮,展开“数据库链接”配置页面,选择相应的数据库类型,并填写数据链接属性;(我这里是用的Oracle);
3、在数据库连接页面上,填入连接名称(自己定义),主机名称,数据库名称,端口号:1521,数据库用户名和密码,连接方式选择JDBC;在‘选项’的‘命名参数’下填入characterEncoding,‘值’填入utf8;
4.点击“测试”,测试数据库是否链接成功,一般第一次点击"测试"按钮会出现如下错误,主要原因是缺少连接数据库的驱动(我这里是Oracle驱动),将相关数据库驱动包放入kettle安装目录下的lib文件夹内并重启kettle程序;
5.将包导入lib文件夹重启程序后再点击"测试"按钮即可看到连接成功提示(如果你相关配置参数没有写错的话),如下图;
6.单击“目标表”后面的“浏览”,在“数据库浏览器”中选择事先在数据库中建好的表;
7.按住Shift按键将两个模块依次连接起来;
8.将"指定数据库字段"选项框的的√打上,点击"数据库字段页签",点击"获取字段"以对比导入表和目标表的字段名是否匹配,之后点击‘输入字段映射’将Excel的‘源字段’和Oracle建立好的‘目标字段’进行映射,点击‘确定’如下图;
9.配置好后即可进行转换,点击右侧空白处左上角的三角按钮,在弹出的对话框中点击启动按钮,如果过程顺利则模块右上角都会出现"√"图标,说明转换成功,如下图;
10.转换成功后将文件进行命名并保存,之后进行作业需要用到。
三、作业
在开始作业前,要先写好跟业务相关的SQL,并保存为.sql 文件
1、点击‘作业’,点击‘通用’,把‘start’、‘转换’,‘成功’拉取来,如下图;
2、点击‘脚本’下的‘SQL’;
3、双击转换,如下图,点击浏览,查看之前保存的‘转换’文件的路径;
4、双击‘SQL’,点击“新建”编辑连接数据库,可看步骤二(表输出),之后点击‘从文件中得到的SQL’,点击下面的‘浏览’,将写好的SQL文件导入。
5、按“Shift”将四个模块连接起来,点击左上角的‘运行’,转换成功如下图
出现错误提示:
kettle没有导入jdbc的jar包,需要去安装Oracle文件夹下找,之后复制到kettle的lib文件目录下;Oracle数据建表字段要大写,否则在‘表输出’模块上没法获得字段;在进行作业时,在‘转换’模块和SQL脚本模块预览文件时,确认自己的文件路径是否正确。