一种新旧数据库的数据迁移方法、设备及其存储介质与流程

本发明涉及数据处理,尤其是一种新旧数据库的数据迁移方法、设备及其存储介质。
背景技术:
1、软件开发中为满足各种日新月异的需求,在功能迭代升级的过程中经常会出现参数的增减,这直接影响到程序中使用的数据格式,程序员不得不花费精力考虑历史版本的数据格式,做兼容性处理,这会使得兼容代码愈来愈多,维护成本也随时间增加。
2、如果兼容性没有处理好,会造成旧软件用户日常使用的配置丢失、不完整或异常,在打印软件升级时经常会出现需要重新校准或重新设置打印参数,极大的影响用户体验。
技术实现思路
1、本发明为了解决上述存在的技术问题,提供一种新旧数据库的数据迁移方法。
2、本发明的技术方案是这样实现的:
3、一种新旧数据库的数据迁移方法,包括以下步骤:
4、s1、软件升级或首次启动前,检查数据库数据格式是否需要升级,同时开启新旧两个数据库;
5、s2、数据库和表的比对;
6、s2-1、从多个数据库文件中,按相同文件名逐一比对;
7、s2-2、确定原有数据库为数据库a,新数据库为数据库b;
8、s2-3、获取数据库a和数据库b中相同名称的表及其字段信息;
9、s3、字段信息处理,对比表a和表b中的字段,执行字段的「与」运算,保留相同名称的字段;
10、s4、行数据处理,逐行处理表a中的行数据;
11、其中,若表a中的字段在表b中不存在,按表b字段的默认值处理;
12、若字段在表a和表b中都存在,复制表a中的原行值;
13、若表b中不存在表a的字段,忽略该行数据;
14、s5、新行数据写入,将处理后的行数据写入表b,并处理写入过程中的数据冲突;
15、其中,若表b中存在主键或唯一键冲突,覆盖行数据;
16、若无冲突,新增行数据;
17、s6、完成表数据迁移,重复步骤s3至s5,完成所有同名数据表的数据迁移;
18、s7、数据库文件处理,完成所有表的数据迁移后,删除旧数据库a的db文件;
19、s8、后续数据库文件处理,继续处理下一个同名的数据库db文件,重复步骤s2至s7;
20、s9、完成所有数据库文件的数据迁移工作。
21、一种基于上述方法的数据迁移设备,包括处理器和存储器;其中,
22、所述存储器用于存储程序指令;
23、所述处理器调用所述存储器所存储的程序指令后能够执行如下操作:
24、从多个数据库db文件中,按照相同文件名的数据库逐一进行比较;
25、其中,所述多个数据库db文件包括第一数据库db文件以及第二数据库db文件;
26、对于所述第一数据库db文件以及第二数据库db文件,获取所述第一数据库db文件以及所述第二数据库db文件中的每个数据库db文件对应的至少一个表;
27、将所述至少一个表中的每一表格的所有列进行合并,并且,若合并后的列的数量大于预设数量,则去除所述合并后的列中的部分列,得到最终的列;
28、针对所述最终的列,将所述第一数据库db文件中的数据迁移到所述第二数据库db文件。
29、一种基于上述方法的存储介质,所述存储介质中存储有计算机程序,当所述计算机程序被处理器运行时使所述处理器执行所述一种新旧数据库的数据迁移方法;
30、还包括芯片,所述芯片与存储器耦合,用于执行所述存储器中存储的计算机程序,以执行所述一种新旧数据库的数据迁移方法。
31、本发明相比现有技术而言,具有以下有益效果:
32、1、本发明通过在迁移过程中使用新表的默认值来处理旧表中不存在的字段,开发人员不需要为旧数据格式编写额外的兼容代码,从而减少了开发和维护的工作量,迁移后的数据遵循新数据库的格式,不再需要为不同版本的数据格式编写特定的处理逻辑;
33、2、通过自动化的迁移步骤,减少了人为介入,降低了因版本差异导致的兼容性问题;
34、3、通过比对和处理字段以及行数据,确保了迁移后的数据与新数据库的要求一致,避免了数据不一致的问题。
技术特征:
1.一种新旧数据库的数据迁移方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的一种新旧数据库的数据迁移方法,其特征在于:所述s2还包括:
3.根据权利要求1所述的一种新旧数据库的数据迁移方法,其特征在于:所述s3中处理字段时执行字段的「与」运算,保留相同名称的字段。
4.根据权利要求1所述的一种新旧数据库的数据迁移方法,其特征在于:所述s4中,若表a中的字段在表b中不存在,按表b字段的默认值处理;若字段在表a和表b中都存在,复制表a中的原行值;若表b中不存在表a的字段,忽略该行数据。
5.根据权利要求1所述的一种新旧数据库的数据迁移方法,其特征在于:所述s5中,其中,若表b中存在主键或唯一键冲突,覆盖行数据;若无冲突,新增行数据。
6.根据权利要求1所述的一种新旧数据库的数据迁移方法,其特征在于:所述s2中引入版本控制机制,以识别数据库a和b的不同版本,并相应地调整迁移策略,具体为:1、确定数据库版本和差异;2、调整迁移策略。
7.根据权利要求6所述的一种新旧数据库的数据迁移方法,其特征在于:所述确定数据库版本和差异的过程如下:
8.根据权利要求6所述的一种新旧数据库的数据迁移方法,其特征在于:所述调整迁移策略的过程如下:
9.一种基于权利要求1-8任一所述方法的数据迁移设备,其特征在于:包括处理器和存储器;其中,
10.一种基于权利要求1-8任一所述方法的存储介质,其特征在于:所述存储介质中存储有计算机程序,当所述计算机程序被处理器运行时使所述处理器执行所述一种新旧数据库的数据迁移方法;
技术总结
本发明公开了一种新旧数据库的数据迁移方法,通过在软件升级或首次启动前检查数据库数据格式是否需要升级,并同时开启新旧两个数据库,通过比对新旧数据库文件,识别出需要迁移的表和字段,在字段信息处理阶段,执行字段的「与」运算,只保留两个数据库中都存在的相同名称字段,减少了对不同字段类型的兼容性处理,在行数据处理阶段,逐行处理数据,对于新字段使用默认值填充,旧字段直接复制,简化了数据迁移的复杂性,降低了兼容性问题的发生,在新行数据写入阶段,我们处理数据写入过程中的冲突,如主键或唯一键冲突时覆盖数据或新增数据,确保数据的一致性;通过重复执行字段和行数据处理步骤,确保所有表的数据迁移都能减少兼容性问题。
技术研发人员:陈周桐,黄信荣
受保护的技术使用者:广州市森扬电子科技有限公司
技术研发日:
技术公布日:2024/11/18
技术研发人员:陈周桐,黄信荣
技术所有人:广州市森扬电子科技有限公司
备 注:该技术已申请专利,仅供学习研究,如用于商业用途,请联系技术所有人。
声 明 :此信息收集于网络,如果你是此专利的发明人不想本网站收录此信息请联系我们,我们会在第一时间删除
