终端数据升级方法及装置与流程

文档序号:11829826阅读:175来源:国知局
终端数据升级方法及装置与流程
本发明涉及数据处理
技术领域
,尤其涉及终端数据升级方法及装置。
背景技术
:通信设备软件一般是将网管配置的数据保存在文件数据库中,由于用户不断有新增的需求,新版本的软件为了适应用户新增的需求,经常会将一些数据库表的格式进行扩展,以保存新增功能的配置数据,因此,在通信设备软件升级的时候一般都伴随着这种数据库的表格式的扩展。以前的升级方法多采用删除数据库文件,然后由网管重新下发配置的方法。这个过程需要用户手动干预,比较繁琐,而且网管重新下发配置的过程对于设备稳定性也有一定的影响,严重时甚至会影响业务。现有不需要删除数据库文件的方法,通常需由主机和备机配合才能完成数据库的升级,对于不是主机和备机系统结构的通信设备就无法使用。使得数据库的升级无法满足所有系统结构的通信设备的软件升级,数据库升级受到限制,进而影响通信设备的业务,造成通信设备体验差。上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。技术实现要素:本发明的主要目的在于提供一种终端数据升级方法及装置,旨在解决现有的升级过程中使得数据库的升级无法满足所有系统结构的通信设备的软件升级,数据库升级受到限制,进而影响通信设备的业务,造成通信设备体验差的问题。为实现上述目的,本发明提供的一种终端数据升级方法,包括步骤:在加载新版本的数据升级包时,从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据;将第一数据与第二数据合并,并将合并后的数据保存在新的主表数据库中,以完成终端数据的升级操作。优选地,所述从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据的步骤之前,还包括:将新版本的数据库扩展字段的缺省值注册到辅表数据库文件中;将所述辅表数据库文件添加至新版本的数据升级包中。优选地,所述将新版本的数据库扩展字段的缺省值注册到辅表数据库文件中的步骤包括:确定新版本的数据库待增加、待删除及/或待修改的字段及所确定的字段对应的缺省值;将所确定的缺省值注册到辅助数据库文件中。优选地,所述从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据的步骤包括:从数据库主表中读取旧的数据并翻译得到第一翻译结果,将第一翻译结果保存到内存数据表项中作为第一数据;从数据库辅表中读取扩展部分的数据并翻译得到第二翻译结果,将第二翻译结果保存到内存数据表项中作为第二数据。优选地,所述将第一数据与第二数据合并,并将合并后的数据保存在新的主表数据库中的步骤包括:将第一数据和第二数据合并生成新版本的内存数据库表项;将新版本的内存数据库表项保存在新的主表数据库中。此外,为实现上述目的,本发明还提供一种终端数据升级装置,包括:读取模块,用于在加载新版本的数据升级包时,从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据;合并模块,用于将第一数据与第二数据合并;存储模块,用于将合并后的数据保存在新的主表数据库中,以完成终端数据的升级操作。优选地,所述终端数据升级装置还包括注册模块和添加模块,所述注册模块,用于将新版本的数据库扩展字段的缺省值注册到辅表数据库文件中;所述添加模块,用于将所述辅表数据库文件添加至新版本的数据升级包中。优选地,所述注册模块包括确定单元和注册单元,所述确定单元,用于确定新版本的数据库待增加、待删除及/或待修改的字段及所确定的字段对应的缺省值;所述注册单元,用于将所确定的缺省值注册到辅助数据库文件中。优选地,所述读取模块还包括读取单元、翻译单元和保存单元,所述读取单元,用于从数据库主表中读取旧的数据;所述翻译模块,用于将旧的数据翻译得到第一翻译结果;所述保存单元,用于将第一翻译结果保存到内存数据表项中作为第一数据;所述读取单元,还用于从数据库辅表中读取扩展部分的数据;所述翻译单元,还用于翻译扩展部分的数据得到第二翻译结果;所述保存单元,还用于将第二翻译结果保存到内存数据表项中作为第二数据。优选地,所述合并模块,还用于将第一数据和第二数据合并生成新版本的内存数据库表项;还用于将新版本的内存数据库表项保存在新的主表数据库中。本发明通过将需要扩展的数据记录在辅表数据库文件中,并将辅表添加至新版本的数据升级包中,以供终端升级数据时通过辅表数据库文件中的扩展的数据与旧版本的数据合并,生成新的数据,以完成终端升级。有效避免现有的升级过程中使得数据库的升级无法满足所有系统结构的通信设备的软件升级,数据库升级受到限制,进而影响通信设备的业务,造成通信设备体验差的问题。使得终端数据升级不需要删除数据库文件重新下发配置,提高了升级过程中终端的稳定性,且该升级方式不依赖主备机系统,能满足所有系统结构的终端的软件升级,扩展了终端数据升级的适用范围,提高了终端 的体验。附图说明图1为本发明终端数据升级方法的较佳实施例的流程示意图;图2为本发明从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据一实施例的流程示意图;图3为本发明终端数据升级过程中数据走向一实施例的流程示意图;图4为本发明终端数据升级装置的较佳实施例的功能模块示意图;图5为图4中注册模块一实施例的细化功能模块示意图;图6为图4中读取模块一实施例的细化功能模块示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例的主要解决方案是:在加载新版本的数据升级包时,从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据;将第一数据与第二数据合并,并将合并后的数据保存在新的主表数据库中,以完成终端数据的升级操作。通过将需要扩展的数据记录在辅表数据库文件中,并将辅表添加至新版本的数据升级包中,以供终端升级数据时通过辅表数据库文件中的扩展的数据与旧版本的数据合并,生成新的数据,以完成终端升级。有效避免现有的升级过程中使得数据库的升级无法满足所有系统结构的通信设备的软件升级,数据库升级受到限制,进而影响通信设备的业务,造成通信设备体验差的问题。使得终端数据升级不需要删除数据库文件重新下发配置,提高了升级过程中终端的稳定性,且该升级方式不依赖主备机系统,能满足所有系统结构的终端的软件升级,扩展了终端数据升级的适用范围,提高终端的体验。由于现有的升级过程中使得数据库的升级无法满足所有系统结构的通信设备的软件升级,数据库升级受到限制,进而影响通信设备的业务,造成通信设备体验差。基于上述问题,本发明提供一种终端数据升级方法。参照图1,图1为本发明终端数据升级方法的较佳实施例的流程示意图。在一实施例中,所述终端数据升级方法包括:步骤S10,在加载新版本的数据升级包时,从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据;在本实施例中,在终端软件需要增加功能,或在终端软件的功能需要修改,及/或在终端软件的功能需要删除时,构建新版本的数据升级包,该新版本的数据升级包用于对终端软件进行升级,一般由终端软件的开发商提供,并更新不同版本的数据升级包。所述升级数据包包括待增加、删除及/或修改的功能对应的数据。具体的,将新版本的数据库扩展字段的缺省值注册到辅表数据库文件中;将所述辅表数据库文件添加至新版本的数据升级包中。确定新版本的数据库待增加、待删除及/或待修改的字段及所确定的字段对应的缺省值;将所确定的缺省值注册到辅助数据库文件中。将新版本的数据升级包拷贝或者下载至需要升级的终端。所述终端在加载新版本的数据升级包时,从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据。所述第二数据,即扩展部分的数据指新版本相对于旧版本的一些数据库表格式可能会扩展,比如新版本增加支持某个新功能需要对数据表Table_A进行扩展,其结果是数据表Table_A新增了某个字段Filed_S。具体的,参考图2,所述从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据的过程可以包括:步骤S11,从数据库主表中读取旧的数据进行翻译得到第一翻译结果,将第一翻译结果保存到内存数据表项中作为第一数据;步骤S12,从数据库辅表中读取扩展部分的数据进行翻译得到第二翻译结果,将第二翻译结果保存到内存数据表项中作为第二数据。所述翻译的过程由新定义的数据库表翻译模块提供,该模块的功能是在新版本的软件运行起来后,即,在加载新版本的数据升级包后,对文件数据库表或辅表中的数据进行翻译,然后将翻译结果保存到内存数据表项中。步骤S20,将第一数据与第二数据合并,并将合并后的数据保存在新的主表数据库中,以完成终端数据的升级操作。将第一数据和第二数据合并生成新版本的内存数据库表项,将新版本的内存数据所述第一数据与第二数据合并由新定义的数据库表合成模块提供,该模块的功能是将内存数据表项中主表和辅表相关的数据表项进行合并,然后生成新版本的内存数据表项并将其保存在新的主表数据库文件中。具体的,所述终端数据升级过程中数据走向如图3所示。先从主表数据库文件和辅表数据库中读取需要升级的数据,即,先从主表数据库文件中读取数据,该部分数据包含了旧版本数据库中的内容,再读取辅表文件数据库进行读取,该部分内容包括数据扩展的部分,即包括数据需要改变部分的内容,将读取的数据(包括从主表和辅表数据库文件中读取的数据)送至数据库表翻译模块,数据库表翻译模块对读取的数据进行翻译得到包含有完整的旧版本数据和新版本扩展数据的信息,并根据翻译结果生成内存数据库表项,包括新版本的和旧版本的,将内存数据库表项合并,生成一个最终的内存数据表,作为新版本软件的内存数据表,将新版本软件的内存数据表生成新版本表数据库文件,在运行该软件后,通过新版本表数据库文件来实现新增加、修改或删除的功能,最终实现终端数据升级操作。为了能更好的说明本发明终端数据升级过程,以下从新增字段、删除字段和修改字段来说明:一、新增字段1、举例说明,新版本软件增加了某个功能,该功能需要将一些信息保存在已有的数据库表Table_A中,这就要对数据库表Table-A进行一次扩展,扩展的结果是数据库表Table_A新增了一个字段Filed_S,该字段的缺省值是Value_V。首先将这些信息注册到一个辅表数据库文件中,辅表数据库文件可以按照表1的格式对新增字段进行注册。TABELNAMEFILEDNAMEVALUE………Tabel_AFiled_SValue_V………表1其中,第一列表示数据库表的名称,第二列表示新增的表的字段的名称,第三列表示新增字段的缺省值。辅表数据库文件以数据库的名称作为关键字,注册信息还包括扩展字段的名称以及该字段的缺省值。2、升级时将辅表数据库文件和新版本软件一同放入升级包中,系统加载新版本的软件运行起来以后,数据库表翻译模块首先对主表文件数据库进行翻译,并将翻译的结果保存到内存数据表项中。翻译完成以后,内存数据表项就包含了旧版本数据库中的内容。3、在完成对主表的翻译以后,数据库表翻译模块对辅表文件数据库进行翻译,将数据库表Table_A新增的字段Filed_S以及它的缺省值Value_V翻译到内存数据表项中保存起来。至此,内存数据表项就包含有完整的旧版本数据和新版本扩展数据的信息。4、数据库表合成模块对旧版本和新版本扩展的内存数据表项进行合并,并生成一个最终的内存数据表,作为新版本软件的内存数据表。比如,数据库表Table_A包含有旧版本的一个字段Filed_O,同时还包含有新版本扩展的一个字段Filed_S,数据库表合成模块根据数据库表名称Table_A检索到新旧版本的两个字段Filed_O和Filed_S,然后将其合并,生成一个最终的内存数据表。5、数据库表合成模块将新的内存数据表保存到文件数据库中作为新版本的主表数据库文件。这样,新的主表就包含了新版本扩展数据表项的内容,数据库主表由旧版本平滑的升级到了新版本。实施例二:删除字段1、举例说明,新版本软件某个功能不再需要了,该功能对应的数据库表Table_A中的字段Filed_O需要删除。首先将这些信息注册到一个辅表数据库文件中,辅表数据库文件可以按照表2所述的格式对删除字段进行注册。TABELNAMEFILEDNAME……Tabel_AFiled_O……表2其中第一列表示数据库表的名称,第二列表示删除的表的字段的名称。2、升级时将辅表数据库文件和新版本软件一同放入升级包中,系统加载新版本的软件运行起来以后,数据库表翻译模块首先对主表文件数据库进行翻译,并将翻译的结果保存到内存数据表项中。翻译完成以后,内存数据表项就包含了旧版本数据库中的内容。3、在完成对主表的翻译以后,数据库表翻译模块对辅表文件数据库进行翻译,将数据库表Table_A删除的字段Filed_O翻译到内存数据表项中保存起来。至此,内存数据表项就包含有完整的旧版本数据和新版本删除数据的信息。4、数据库表合成模块根据辅表注册的信息,将Table_A的Filed_O字段删除,并生成一个最终的内存数据表,作为新版本软件的内存数据表。5、数据库表合成模块将新的内存数据表保存到文件数据库中作为新版本的主表数据库文件。这样,新的主表就包含了新版本删除字段后数据表项的内容,数据库主表由旧版本平滑的升级到了新版本。实施例三:修改字段1、修改字段可以用先删除后增加两个操作配合完成,这里可以参照表1和表2,将删除和新增的信息同时注册到辅表数据库文件中。2、升级时将辅表数据库文件和新版本软件一同放入升级包中,系统加载新版本的软件运行起来以后,数据库表翻译模块首先对主表文件数据库进行翻译,并将翻译的结果保存到内存数据表项中。翻译完成以后,内存数据表项就包含了旧版本数据库中的内容。3、在完成对主表的翻译以后,数据库表翻译模块对辅表文件数据库进行翻译,将数据库表Table_A删除以及新增的字段注册信息翻译到内存数据表项中保存起来。至此,内存数据表项就包含有完整的旧版本数据和新版本修 改数据的信息。4、数据库表合成模块首先处理删除操作,将原字段删除,然后处理新增操作,具体步骤可参考实施例一、二中的说明。5、数据库表合成模块将新的内存数据表保存到文件数据库中作为新版本的主表数据库文件。这样,新的主表就包含了新版本修改数据表项的内容,数据库主表由旧版本平滑的升级到了新版本。本实施例通过将需要扩展的数据记录在辅表数据库文件中,并将辅表添加至新版本的数据升级包中,以供终端升级数据时通过辅表数据库文件中的扩展的数据与旧版本的数据合并,生成新的数据,以完成终端升级。使得终端数据升级不需要删除数据库文件重新下发配置,提高了升级过程中终端的稳定性,且该升级方式不依赖主备机系统,能满足所有系统结构的终端的软件升级,扩展了终端数据升级的适用范围,提高终端的体验。上述实施例的终端数据升级方法的执行主体均可以为终端。更进一步地,该终端数据升级方法可以由安装在终端上的客户端终端数据升级程序实现,其中,该终端包括但不限于手机、pad、笔记本电脑等。本发明进一步提供一种终端数据升级装置。参照图4,图4为本发明终端数据升级装置的较佳实施例的功能模块示意图。在一实施例中,所述终端数据升级装置包括:读取模块10、注册模块20、添加模块30、合并模块40及存储模块50。所述读取模块10,用于在加载新版本的数据升级包时,从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据;在终端软件需要增加功能,或在终端软件的功能需要修改,及/或在终端软件的功能需要删除时,构建新版本的数据升级包,该新版本的数据升级包用于对终端软件进行升级,一般由终端软件的开发商提供,并更新不同版本的数据升级包。所述升级数据包包括待增加、删除及/或修改的功能对应的数据。所述注册模块20,用于将新版本的数据库扩展字段的缺省值注册到辅表 数据库文件中;所述添加模块30,用于将所述辅表数据库文件添加至新版本的数据升级包中。参考图5,所述注册模块20包括确定单元21,用于确定新版本的数据库待增加、待删除及/或待修改的字段及所确定的字段对应的缺省值;注册单元22,用于将所确定的缺省值注册到辅助数据库文件中。将新版本的数据升级包拷贝或者下载至需要升级的终端。所述终端在加载新版本的数据升级包时,从数据库主表中读取旧的数据库表格式的数据作为第一数据,并从数据库辅表中读取扩展部分的数据作为第二数据。所述第二数据,即扩展部分的数据指新版本相对于旧版本的一些数据库表格式可能会扩展,比如新版本增加支持某个新功能需要对数据表Table_A进行扩展,其结果是数据表Table_A新增了某个字段Filed_S。参考图6,所述读取模块10包括读取单元11、翻译单元12及保存单元13,所述读取单元11,用于从数据库主表中读取旧的数据;所述翻译单元12,用于翻译旧的数据得到第一翻译结果;所述保存单元13,用于将第一翻译结果保存到内存数据表项中作为第一数据;所述读取单元11,还用于从数据库辅表中读取扩展部分的数据;所述翻译单元12,还用于翻译扩展部分的数据得到第二翻译结果;所述保存单元13,还用于将第二翻译结果保存到内存数据表项中作为第二数据。所述翻译的过程由新定义的数据库表翻译模块提供,该模块的功能是在新版本的软件运行起来后,即,在加载新版本的数据升级包后,对文件数据库表或辅表中的数据进行翻译,然后将翻译结果保存到内存数据表项中。所述合并模块40,用于将第一数据与第二数据合并;所述存储模块50,用于将合并后的数据保存在新的主表数据库中,以完成终端数据的升级操作。将第一数据和第二数据合并生成新版本的内存数据库表项,将新版本的内存数据所述第一数据与第二数据合并由新定义的数据库表合成模块提供,该模块的功能是将内存数据表项中主表和辅表相关的数据表项进行合并,然 后生成新版本的内存数据表项并将其保存在新的主表数据库文件中。具体的,所述终端数据升级过程中数据走向如图3所示。先从主表数据库文件和辅表数据库中读取需要升级的数据,即,先从主表数据库文件中读取数据,该部分数据包含了旧版本数据库中的内容,再读取辅表文件数据库进行读取,该部分内容包括数据扩展的部分,即包括数据需要改变部分的内容,将读取的数据(包括从主表和辅表数据库文件中读取的数据)送至数据库表翻译模块,数据库表翻译模块对读取的数据进行翻译得到包含有完整的旧版本数据和新版本扩展数据的信息,并根据翻译结果生成内存数据库表项,包括新版本的和旧版本的,将内存数据库表项合并,生成一个最终的内存数据表,作为新版本软件的内存数据表,将新版本软件的内存数据表生成新版本表数据库文件,在运行该软件后,通过新版本表数据库文件来实现新增加、修改或删除的功能,最终实现终端数据升级操作。为了能更好的说明本发明终端数据升级过程,以下从新增字段、删除字段和修改字段来说明:一、新增字段1、举例说明,新版本软件增加了某个功能,该功能需要将一些信息保存在已有的数据库表Table_A中,这就要对数据库表Table-A进行一次扩展,扩展的结果是数据库表Table_A新增了一个字段Filed_S,该字段的缺省值是Value_V。首先将这些信息注册到一个辅表数据库文件中,辅表数据库文件可以按照表1的格式对新增字段进行注册。2、升级时将辅表数据库文件和新版本软件一同放入升级包中,系统加载新版本的软件运行起来以后,数据库表翻译模块首先对主表文件数据库进行翻译,并将翻译的结果保存到内存数据表项中。翻译完成以后,内存数据表项就包含了旧版本数据库中的内容。3、在完成对主表的翻译以后,数据库表翻译模块对辅表文件数据库进行翻译,将数据库表Table_A新增的字段Filed_S以及它的缺省值Value_V翻译到内存数据表项中保存起来。至此,内存数据表项就包含有完整的旧版本数据和新版本扩展数据的信息。4、数据库表合成模块对旧版本和新版本扩展的内存数据表项进行合并,并生成一个最终的内存数据表,作为新版本软件的内存数据表。比如,数据 库表Table_A包含有旧版本的一个字段Filed_O,同时还包含有新版本扩展的一个字段Filed_S,数据库表合成模块根据数据库表名称Table_A检索到新旧版本的两个字段Filed_O和Filed_S,然后将其合并,生成一个最终的内存数据表。5、数据库表合成模块将新的内存数据表保存到文件数据库中作为新版本的主表数据库文件。这样,新的主表就包含了新版本扩展数据表项的内容,数据库主表由旧版本平滑的升级到了新版本。实施例二:删除字段1、举例说明,新版本软件某个功能不再需要了,该功能对应的数据库表Table_A中的字段Filed_O需要删除。首先将这些信息注册到一个辅表数据库文件中,辅表数据库文件可以按照表2所述的格式对删除字段进行注册。2、升级时将辅表数据库文件和新版本软件一同放入升级包中,系统加载新版本的软件运行起来以后,数据库表翻译模块首先对主表文件数据库进行翻译,并将翻译的结果保存到内存数据表项中。翻译完成以后,内存数据表项就包含了旧版本数据库中的内容。3、在完成对主表的翻译以后,数据库表翻译模块对辅表文件数据库进行翻译,将数据库表Table_A删除的字段Filed_O翻译到内存数据表项中保存起来。至此,内存数据表项就包含有完整的旧版本数据和新版本删除数据的信息。4、数据库表合成模块根据辅表注册的信息,将Table_A的Filed_O字段删除,并生成一个最终的内存数据表,作为新版本软件的内存数据表。5、数据库表合成模块将新的内存数据表保存到文件数据库中作为新版本的主表数据库文件。这样,新的主表就包含了新版本删除字段后数据表项的内容,数据库主表由旧版本平滑的升级到了新版本。实施例三:修改字段1、修改字段可以用先删除后增加两个操作配合完成,这里可以参照表1和表2,将删除和新增的信息同时注册到辅表数据库文件中。2、升级时将辅表数据库文件和新版本软件一同放入升级包中,系统加载新版本的软件运行起来以后,数据库表翻译模块首先对主表文件数据库进行 翻译,并将翻译的结果保存到内存数据表项中。翻译完成以后,内存数据表项就包含了旧版本数据库中的内容。3、在完成对主表的翻译以后,数据库表翻译模块对辅表文件数据库进行翻译,将数据库表Table_A删除以及新增的字段注册信息翻译到内存数据表项中保存起来。至此,内存数据表项就包含有完整的旧版本数据和新版本修改数据的信息。4、数据库表合成模块首先处理删除操作,将原字段删除,然后处理新增操作,具体步骤可参考实施例一、二中的说明。5、数据库表合成模块将新的内存数据表保存到文件数据库中作为新版本的主表数据库文件。这样,新的主表就包含了新版本修改数据表项的内容,数据库主表由旧版本平滑的升级到了新版本。本实施例通过将需要扩展的数据记录在辅表数据库文件中,并将辅表添加至新版本的数据升级包中,以供终端升级数据时通过辅表数据库文件中的扩展的数据与旧版本的数据合并,生成新的数据,以完成终端升级。使得终端数据升级不需要删除数据库文件重新下发配置,提高了升级过程中终端的稳定性,且该升级方式不依赖主备机系统,能满足所有系统结构的终端的软件升级,扩展了终端数据升级的范围,提高终端的体验。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域
,均同理包括在本发明的专利保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1