定时导入excel到数据库

前面我们介绍了一键导入excel到数据库的方法,省去了excel导入数据库的繁杂步骤,解决了中间可能遇到的各种问题。也介绍了多个excel文件批量导入到数据库的方法,实现了无人值守的批量导入。 现在我们介绍如何实现定时导入,实现全自动化。

示例

如图,假设我们有一张表格叫员工信息.xlsx,里面记录了公司所有的员工信息,当有新员工加入时会在表里新增数据,当有员工信息变动时,也可能会更新表数据。

现在,我们要把这个表的数据同步至数据库,并且当excel数据更新时,能够定时更新数据库里面的数据。

定时导入excel到数据库_数据库

第一步:在数据库中建立员工信息表

这里我们以mysql数据库为例,先在数据库中建立一张员工信息表用于存放即将导入的excel数据。 使用ExcelToDatabase工具一键导入excel到数据库。

定时导入excel到数据库_数据库_02

定时导入excel到数据库_数据_03

第二步:决定更新方式 数据的更新方式一般有两种:全量更新与增量更新 1.全量更新:即删除数据库表中之前导入的全部数据,再将excel表的全部数据导入进去。这种方式简单粗暴,保证了excel和数据库数据的一致性。但是当excel数据量较大或者更新较为频繁时,会消耗更多的资源和时间。一般适用于数据量较小或者更新不频繁或者不需要保留历史数据的场景。 2.增量更新:即在数据库表已有数据的基础上,只更新excel新增或者修改的数据。这种方式需要每行数据都有一个固定唯一标识,用于区分数据,比如这里的员工id。 下面我们分别介绍两种更新方式。全量更新

我们先将刚刚的导入配置另存为叫员工信息,并在MySQL选项勾选表若存在先清空,点击保存。

定时导入excel到数据库_数据_04

在工具菜单栏-定时任务-新增,新增一个定时任务叫员工信息-全量更新(这里定时任务的设置我们先保持默认,后面再做补充)

定时导入excel到数据库_数据_05

编辑excel,分别删除,新增,修改一条数据测试效果,下图是修改前数据库表中数据的样子,我们将删除最后一条姓名为林子程记录,将倒数第二天张智春的工资改为10000,再新增一条记录

定时导入excel到数据库_定时任务_06

修改后如图所示,并保存excel

定时导入excel到数据库_数据_07

再次查看数据库表数据,已更新

定时导入excel到数据库_数据_08

增量更新

如果正在进行全量更新,先将其停止。

定时导入excel到数据库_数据库_09

这里,我们选用员工id作为数据的唯一标识,并在数据库表里面将其设置为主键。

定时导入excel到数据库_定时任务_10

MySQL选项界面取消勾选表若存在先清空,并勾选当Excel与表数据重复时-更新,保存配置

定时导入excel到数据库_定时任务_11

新增一个定时任务叫员工信息-增量更新

定时导入excel到数据库_定时任务_12

然后修改一条数据测试,这里我们修改员工id为1004的工资,修改前为12000 删除员工id为1005的数据,并新增一条员工id为1006的数据 数据库表修改前如图:

定时导入excel到数据库_数据_13

excel修改保存excel如图

定时导入excel到数据库_数据库_14

再次查看数据库表,已更新

定时导入excel到数据库_数据_15

可以看到,员工id1004的工资已改为60000,员工id1005依然在数据库中保留了下来,并新增了员工id1006

定时任务设置

定时导入excel到数据库_数据库_16

可以在工具菜单栏-定时任务新增/编辑/删除定时任务。选择配置:选择一个保存的配置 开始/结束时间:填写定时任务的有效期间 月份:可填1-12 星期:可填1-7即星期一到星期日 天:可填1-31 小时:可填0-23 分钟:可填0-59 秒钟:可填0-59 输入定时任务名称:默认使用配置名称,可修改 禁用:如果要禁用定时任务请勾选

以小时为例:填13表示13点,填13,16表示13点和16点,填13-16表示13到16点,填 * 表示每个小时即0-23,填 */2表示每隔1小时

常见定时任务示例如图:

定时导入excel到数据库_定时任务_17

可以在定时任务界面查看实时定时任务的基本信息:

定时导入excel到数据库_数据库_18

注意:如果有正在运行的定时任务,点击x关闭界面时,程序会隐藏到托盘区而不是直接退出程序。如果再点击退出程序,程序会直接退出程序,并停止执行定时任务,重新启动程序又会重新启动定时任务。

定时导入excel到数据库_数据_19

如何将ExcelToDatabase加入开机启动

需要运行定时任务的应用程序一般放置于24小时不间断运行的服务器上,但是如果是自己电脑上运行的定时任务,可能每天都会重启电脑。这时我们可以将程序加入开机启动,启动程序后才会自动运行定时任务。第一步:创建exe快捷方式

定时导入excel到数据库_数据库_20

第二步:将快捷方式放入windows的启动文件夹下,该文件下的程序会随着电脑开机启动我的电脑路径为:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

定时导入excel到数据库_数据库_21

其他定时方式

使用ExcelToDatabase内置的定时任务需要保持程序开启,退出程序后会自动停止定时任务的运行。如果想不开启程序让定时任务在后台运行,则可以让其他专门的定时任务程序调用ExcelToDatabase提供的API。比如Windows自带的任务计划程序等,这种方式提供了无图形化界面的后台运行方式,并能随电脑开机自动启动。

定时导入excel到数据库_数据库_22

API使用方法可以参照下方介绍

ExcelToDatabase介绍及下载

介绍

  • ExcelToDatabase-批量导入Excel文件到MySQL/Oracle/SQL Server/PostgreSQL/Access/Hive/SQLite/达梦数据库的自动化工具

下载

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: 数据库