我们在第8篇的时候已经介绍了将Excel的数据导入到Mysql数据库中,那么,本章我们将介绍将数据从数据库导出到Excel中.
较少数据导出
我们数据库表数据如下图:
数据库中总共存在36条数据,这是数据比较少的情况
新建转换
我们选择 文件 -> 新建 ->转换
建立导出Excel的转换,输入转换名称然后保存
表输入
既然是从数据库表导出数据,所以我们的ETL的第一个步骤就是表输入
新建数据库连接
在选择表输入组件时,我们首先需要创建我们的数据库连接
点击新建按钮,在弹出的数据库编辑框中填入数据库信息,如下图:
在输入完成后,我们可以点击测试按钮对数据库连接进行测试,以查看数据库是否可用
信息无误后,点击确定
此时,我们可以输入我们的查询SQL语句对表进行查询以获取结果
点击预览按钮,弹出预览记录数量限制数量设置,即可以预览数据:
预览无误,说明我们的信息是正确的,我们的表输入最终属性配置信息如下图:
因为我们总数只有36条记录,因此在记录数量限制这里不妨可以设置一个最大值,此处我设置的是40
Microsoft Excel输出
因为我们最终是通过Excel输出,因此我们从转换的核心对象树的输出栏 选择Microsoft Excel输出组件
设置输出组件的属性
因为比较简单,因此我们只需要设置导出的Excel文件名称即可,如下图:
运行
此时我们的ETL转换已创建完成,如下图:
此时,我们点击Spoon界面上的运行按钮,执行该转换过程,导出Excel结果如下:
针对较少的数据,利用Kettle非常轻松的帮助我们导出了数据到Excel中.
较多数据导出Excel
我们在上个步骤中将数据库表中较少数据(36条)导出到了Excel中,这几乎没什么难度,那么如果我们的数据库表中数据比较多时,是否也能按这种方式导出呢?
答案肯定是否定的,因为如果我们一次查询数据较多的话,很可能导致内存溢出的异常或者Kettle直接就崩溃了.
此时我们可以使用分页技术,来将我们的数据按页码批量导出
我们数据库拥有fund表,此时,我们想通过Kettle将fund表的记录全部导出,我们应