赞
踩
前面我们介绍了一键导入excel到数据库的方法,省去了excel导入数据库的繁杂步骤,解决了中间可能遇到的各种问题。也介绍了多个excel文件批量导入到数据库的方法,实现了无人值守的批量导入。
现在我们介绍如何实现定时导入,实现全自动化。
如图,我们有一张表格叫产品信息,里面记录了公司所有的产品信息,当有新产品时会在表里新增数据,当有产品信息变动时,也可能会更新表数据。
现在,我们要把这个表的数据同步至数据库,并且当excel数据更新时,能够定时更新数据库里面的数据。
第一步:在数据库中建立产品信息表
使用ExcelToDatabase工具一键导入excel到数据库。
第二步:决定更新方式
数据的更新方式一般有两种:全量更新与增量更新
1.全量更新:即删除数据库表中之前导入的全部数据,再将excel表的全部数据导入进去。这种方式简单粗暴,保证了excel和数据库数据的一致性。但是当excel数据量较大或者更新较为频繁时,会消耗更多的资源和时间。一般适用于数据量较小或者更新不频繁或者不需要保留历史数据的场景。
2.增量更新:即在数据库表已有数据的基础上,只更新excel新增或者修改的数据。这种方式需要每行数据都有一个固定唯一标识,用于区分数据,比如这里的产品id。
下面我们分别介绍两种更新方式。
全量更新
我们先将刚刚的导入配置保存并命名为产品信息,目标表表可以选择刚刚导入生成的表名,导入模式选择覆盖,点击保存
在软件工具栏-定时任务-新增任务,新增一个定时任务叫产品信息-全量更新(这里定时任务的设置我们先保持默认,后面再做补充)
编辑excel,分别删除,新增,修改一条数据测试效果,下图是修改前数据库表中数据的样子,我们将删除产品10,将产品1的单价改为99,再新增一条产品11
修改后如图所示,并保存excel
再次查看数据库表数据,已更新
增量更新
如果正在进行全量更新,先将其停止。
这里,我们选用产品id作为数据的唯一标识,并在数据库表里面将其设置为主键。
导入模式选择更新,点击保存
新增一个定时任务叫产品信息-增量更新
然后修改一条数据测试,这里我们修改产品6的折扣为0.66,并新增一条产品20
数据库表修改前如图:
excel修改保存excel如图
再次查看数据库表,已更新
定时任务设置
选择子任务:选择保存好的的作业或者选择连接并添加连接下的配置
开始/结束时间:填写定时任务的有效期间
月份:可填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小时即每2小时
示例:每天早上9点运行一次:
可以在定时任务界面查看实时定时任务的基本信息:
注意:定时任务需要软件一直运行,点击x关闭软件界面时,软件默认会立即退出并停止定时任务。可以再软件菜单栏-工具-设置,勾选隐藏到托盘区而不是直接退出程序。隐藏后,可以在托盘区右键程序图标,选择打开主界面或者退出程序。
需要运行定时任务的应用程序一般放置于24小时不间断运行的服务器上,但是如果是自己电脑上运行的定时任务,可能每天都会重启电脑。这时我们可以将程序加入开机启动,启动程序后才会自动运行定时任务。
第一步:创建exe快捷方式
第二步:将快捷方式放入windows的启动文件夹下,该文件下的程序会随着电脑开机启动
我的电脑路径为:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
使用ExcelToDatabase内置的定时任务需要保持程序开启,退出程序后会自动停止定时任务的运行。如果想不开启程序让定时任务在后台运行,则可以让其他专门的定时任务程序调用ExcelToDatabase提供的API。
比如Windows自带的任务计划程序等,这种方式提供了无图形化界面的后台运行方式,并能随电脑开机自动启动。
API使用方法可以参照下方介绍
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。