基于kettle的表出入输出
首先,要确保已经安装好了kettle软件以及一个可以使用的测试库,我用的是kettle下的spoon软件,版本为7.1
连接数据库
依次点击文件 -> 新建 -> 转换
接下来在这一栏找到DB连接,双击DB连接
双击以后得到如下界面,这里输入你要连接的数据库:
在进行了这一步操作后,已经可以抽取数据库数据了,接下来进行表的输入和输出。
建表和插入数据
先建立两张表:
create table Student(
StuId NUMBER, --学生ID
StuName VARCHAR2(10), --名称
Gender VARCHAR2(10), -- 性别
Age NUMBER(2), -- 年龄
JoinDate DATE, --入学时间
ClassId NUMBER, --班级ID
Address VARCHAR2(50) --家庭住址
);
create table EDI.StuClass(
classId NUMBER, -- 班级ID
ClassName varchar2(20) --班级名称
);
往Student表中插入数据:
insert into Student(StuId,Stuname,Gender,Age,ClassId) values(1,'关羽','男',17,1);
insert into Student(StuId,Stuname,Gender,Age,ClassId) values(2,'张飞','男',16,2);
insert into Student(StuId,Stuname,Gender,Age,ClassId) values(3,'刘备','男',18,3);
从数据库中可以看到,三条数据已经插入了:
我的目的是用kettle将student表中的ClassId字段读出,输入到StuClass表中的classId字段,接下来是其步骤。
表输入和表输出
首先我在核心对象的输入中找到表输入选项,拖到任务框中
接下来双击该图标,输入连接的数据库,以及你要执行的查询语句:
再用相同的方法找到表输出,双击表输出,输入以下信息:
这里要注意的是,流字段是从其他表读入的字段名,表字段是你要输入到该表中某个字段的字段名。
接下来按住鼠标滚轮键点击表输入拖动到表输出就可以构成一条连线了,运行这个项目,看到两个图标都变成绿色那就说明输入输出成功了:
查询StuClass表就可以看到数据已经写入: