踩风火轮的乌龟 2020-04-19
项目目标:
首先是将Access数据库中的大量数据(已经存好的原有百万级数据)转存到mysql数据库中,然后,随着Access中数据的增加,要同步更新mysql数据库,更新周期自定。
思路:一开始的转存前篇博客已经讲过,这里就忽略了,主要是实现Access数据更新后同步到mysql中。思路是:
1.用MAX的sql语句查找mysql数据表,找出时间那一列的最大时间MAX(patrol_time)
2.select出Access数据表中时间大于MAX(patrol_time)的数据,用datareader存到reader里面
3.用分列的方式,将读出来最大时间大于MAX(patrol_time)的数据从reader中存储到数组中
4.建立循环,将数组中的数按照对应写入mysql中
5.将以上逻辑写入死循环,设置循环执行的时间间隔
思路清楚了,下面直接上代码,没有什么难的不能理解的地方:
逻辑上和代码上都是用的比较基础和简单的方法实现的,由于时间间隔比较长,所以不用考虑大量循环的性能问题,就直接用的数组来存和写。
其实稍微有点技术含量的地方就是,如何判定是否有新增加的数据。这一块儿,核心代码是这几句:
以及:
注意用大于号来比较的时候,单双引号的使用,因为原数据要求的时间列是用的varchar类型,所以在sql语句里,要加上单引号‘‘