实际工作中我们可能回经常将excel或者csv的数据导入到数据库中,这里讲下怎么通过kettle进行导入;
首先说下这两种格式的区别:CSV是文本文件,用记事本就能打开,XLS是二进制的文件只有用EXCEL才能打
同时CSV (*.csv) 文件格式只能保存活动工作表中的单元格所显示的文本和数值。工作表中所有的数据行和字符都将保存。数据列以逗号分隔,每一行数据都以回车符结束。如果单元格中包含逗号,则该单元格中的内容以双引号引起。
如果单元格显示的是公式而不是数值,该公式将转换为文本方式。所有格式、图形、对象和工作表的其他内容将全部丢失。
若只是保存一点文本信息用 .csv文件就可以了 但是若有设定公式,冻结列等其他东西则用xls;
接下来说下两者的具体用法:
csv输入
打开一个转换,点击程序左边的核心对象,在输入中就可以看到,当然你也可以在左上方的步骤搜索中进行搜索;如图:
ETL工具kettle的csv输入和excel输入_第1张图片
将csv文件输入组件拖到转换中需要的位置;双击打开
ETL工具kettle的csv输入和excel输入_第2张图片
点击浏览添加文件,其他选项用默认就好,接下来点击获取字段,那么就会获取到相应的字段,也可以删除自己不需要的字段,需要注意下类型,特别是涉及到number和date格式的时候注意下,还有右边的去除空格,有时候csv中会存在大量的空格,你根据实际情况自己选择;同时你也可以点击预览看下效果;最后点击确定就好;还有一点文件编码要选择正确的,不然会出现中文乱码;

excel输入
前面步骤和csv输入一样,双击打开,如图
ETL工具kettle的csv输入和excel输入_第3张图片
首先选择合适的表格类型,然后点击浏览,选项文件,然后千万记得点击增加,记住;点击增加后会在下面的选中的文件中可以看到,如果选错了首先要在选中的文件中将它删除;接下来点击工作表,这是为了选中某一个sheet(一个表格可能会有多个sheet)
ETL工具kettle的csv输入和excel输入_第4张图片
然后点击字段,接下来步骤和csv输入一样了