提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
使用kettle将Excel数据转换MySQL数据
一、Excel数据转换MySQL数据
使用kettle将Excel数据转换MySQL数据
二、使用步骤
1.设置数据库连接信息
1.1.导包
将MySQL jdbc 驱动包mysql-connector-j-8.2.0.jar导入到 data-integration/lib中
1.2.配置信息
在设置表输出组件(具体看第3点)时连接方式使用JNDI的方式需要配置
在data-integration\simple-jndi\jdbc.properties 文件编辑,在末尾加上连接信息:
MYSQL_DB/type=javax.sql.DataSource
MYSQL_DB/driver=com.mysql.cj.jdbc.Driver
MYSQL_DB/url=jdbc:mysql://localhost:3306/kettle_demo?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT
MYSQL_DB/user=root
MYSQL_DB/password=123456
1.3. 重启Kettle
2.创建组件
-
新建 --> 转换 (快捷键ctrl+N)
-
输入 --> Microsoft excel input (拖拽到右侧面板)
-
删除 --> 表数据 (拖拽到右侧面板)
-
按住Shift键,在 「Microsoft excel input」组件上点击鼠标左键,拖动到「表输出」组件上,连接两个组件
图例(示例):
2.设置Excel input组件
-
选取表格类型–>Excel 2007 XLSX (Apache POI)
-
选取需要抽取的Excel文件
-
添加到“选中文件”列表中
-
设置需要读取的工作表页签
-
获取字段信息并设置格式
当你使用Excel输入步骤时,可以在“字段”选项卡中设置每个字段的格式。
其中,#是一个特殊字符,用于指定数字的占位符。
具体来说,#代表一个数字字符,如果该位置上不存在数字,则不会显示任何内容。
下面是一些其他示例:
"###-###",则当输入值为 12345 时,该值将被格式化为 "123-45"
"#,##0.00":格式化为带有两位小数的千位分隔符的数字。
"$#,###":格式化为显示美元符号和千位分隔符的整数。
"0000-00-00":格式化为表示日期的字符串,如 "2023-12-12"。
- 预览数据
3.设置表输出组件
- 新建 数据库连接
我这里使用的是Native连接,如果使用JNDI连接的话,连接信息就是使用上诉的连接配置
- 设置输出的目标表
Kettke可以自动为我们在MySQL中创建表
- 执行后确认
4.保存并执行
至此已经已经将Excel文件数据抽取到数据表中!
总结
以上就是今天要讲的内容,本文仅仅简单介绍了kettle如何将Excel数据转换MySQL数据,而kettle提供了大量能使我们快速便捷地处理数据的方法。