CN105700917A - 一种dll与数据库同步的方法及装置 - Google Patents

一种dll与数据库同步的方法及装置 Download PDF

Info

Publication number
CN105700917A
CN105700917A CN201610004575.XA CN201610004575A CN105700917A CN 105700917 A CN105700917 A CN 105700917A CN 201610004575 A CN201610004575 A CN 201610004575A CN 105700917 A CN105700917 A CN 105700917A
Authority
CN
China
Prior art keywords
dll
version
upgrade file
current version
data base
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610004575.XA
Other languages
English (en)
Inventor
肖祝川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur General Software Co Ltd
Original Assignee
Inspur General Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur General Software Co Ltd filed Critical Inspur General Software Co Ltd
Priority to CN201610004575.XA priority Critical patent/CN105700917A/zh
Publication of CN105700917A publication Critical patent/CN105700917A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种DLL与数据库同步的方法及装置,该方法,包括:在DLL中预制数据库升级文件;确定所述DLL的当前版本和数据库的当前版本;判断所述DLL的当前版本与所述数据库的当前版本是否匹配,如果不匹配,则从所述DLL中获取所述数据库升级文件,根据所述数据库升级文件对所述数据库进行升级。本发明提供了一种DLL与数据库同步的方法及装置,能够更加简单地实现DLL与数据库的同步。

Description

一种DLL与数据库同步的方法及装置
技术领域
本发明涉及计算机技术领域,特别涉及一种DLL(DynamicLinkLibrary,动态链接库)与数据库同步的方法及装置。
背景技术
在计算机技术领域中,DLL是一个包含可由多个程序,同时使用的代码和数据的库。当调用DLL组件时,DLL组件可能需要访问数据库,但是,有时DLL进行升级后,数据库没有进行对应的升级,使得在调用DLL组件时,DLL组件在访问数据库时出现异常。为了解决该问题,现有技术中,通过升级工具,分别手动升级DLL和数据库,以使DLL与数据库同步。通过上述描述可见,现有技术中,将DLL与数据库同步的方法较复杂。
发明内容
本发明提供了一种DLL与数据库同步的方法及装置,能够更加简单地实现DLL与数据库的同步。
一方面,本发明提供了一种DLL与数据库同步的方法,包括:在DLL中预制数据库升级文件,还包括:
S1:确定所述DLL的当前版本和数据库的当前版本;
S2:判断所述DLL的当前版本与所述数据库的当前版本是否匹配,如果不匹配,则执行S3;
S3:从所述DLL中获取所述数据库升级文件,根据所述数据库升级文件对所述数据库进行升级。
进一步地,所述在DLL中预制数据库升级文件,包括:
在所述DLL中预制所述DLL的每个版本对应的数据库升级文件;
所述S3,包括:
A1:确定与所述数据库的当前版本相匹配的所述DLL的匹配版本;
A2:确定所述DLL的匹配版本与所述DLL的当前版本之间的所述DLL的中间版本;
A3:从所述DLL中获取所述DLL的每个中间版本对应的中间数据库升级文件,以及所述DLL的当前版本对应的当前数据库升级文件;
A4:根据每个中间数据库升级文件和所述当前数据库升级文件,对所述数据库进行升级。
进一步地,该方法还包括:预先设置版本标示表,所述版本标示表中存储有DLL的版本号与数据库的版本号的匹配关系;
所述在所述DLL中预制所述DLL的每个版本对应的数据库升级文件,包括:在所述DLL中预制所述DLL的每个版本的版本号对应的数据库升级文件;
所述S1,包括:确定所述DLL的当前版本号和数据库的当前版本号;
所述S2,包括:根据所述版本标示表中的所述匹配关系,判断所述DLL的当前版本号与所述数据库的当前版本号是否匹配,如果不匹配,则执行A1;
所述A1,包括:
根据所述版本标示表中的所述匹配关系,确定与所述数据库的当前版本相匹配的所述DLL的匹配版本的匹配版本号;
所述A2,包括:根据所述版本标示表,确定所述DLL的匹配版本号与所述DLL的当前版本号之间的所述DLL的中间版本号;
所述A3,包括:
从所述DLL中获取所述DLL的每个中间版本号对应的中间数据库升级文件,以及所述DLL的当前版本号对应的当前数据库升级文件。
进一步地,所述S1,包括:根据所述DLL的析构函数确定所述DLL的当前版本。
进一步地,还包括:将所述数据库升级文件作为所述DLL的资源文件。
进一步地,所述数据库升级文件包括:数据库升级的SQL文件。
进一步地,所述S2,包括:
通过所述DLL的LOAD方法或析构函数,判断所述DLL的当前版本与数据库的当前版本是否匹配。
另一方面,本发明提供了一种DLL与数据库同步的装置,包括:
预制单元,用于在DLL中预制数据库升级文件;
确定单元,用于确定所述DLL的当前版本和数据库的当前版本;
判断单元,用于判断所述DLL的当前版本与所述数据库的当前版本是否匹配,如果不匹配,触发升级单元;
所述升级单元,用于从所述DLL中获取所述数据库升级文件,根据所述数据库升级文件对所述数据库进行升级。
进一步地,所述预制单元,用于在所述DLL中预制所述DLL的每个版本对应的数据库升级文件;
所述升级单元,包括:
第一确定子单元,用于确定与所述数据库的当前版本相匹配的所述DLL的匹配版本;
第二确定子单元,用于确定所述DLL的匹配版本与所述DLL的当前版本之间的所述DLL的中间版本;
获取子单元,用于从所述DLL中获取所述DLL的每个中间版本对应的中间数据库升级文件,以及所述DLL的当前版本对应的当前数据库升级文件;
升级子单元,用于根据每个中间数据库升级文件和所述当前数据库升级文件,对所述数据库进行升级。
进一步地,该装置还包括:
设置单元,用于设置版本标示表,所述版本标示表中存储有DLL的版本号与数据库的版本号的匹配关系;
所述预制单元,用于在所述DLL中预制所述DLL的每个版本的版本号对应的数据库升级文件;
所述确定单元,用于确定所述DLL的当前版本号和数据库的当前版本号;
所述判断单元,用于根据所述版本标示表中的所述匹配关系,判断所述DLL的当前版本号与所述数据库的当前版本号是否匹配,如果不匹配,则触发所述第一确定子单元;
所述第一确定子单元,用于根据所述版本标示表中的所述匹配关系,确定与所述数据库的当前版本相匹配的所述DLL的匹配版本的匹配版本号;
所述第二确定子单元,用于根据所述版本标示表,确定所述DLL的匹配版本号与所述DLL的当前版本号之间的所述DLL的中间版本号;
所述获取子单元,用于从所述DLL中获取所述DLL的每个中间版本号对应的中间数据库升级文件,以及所述DLL的当前版本号对应的当前数据库升级文件。
进一步地,所述确定单元,用于根据所述DLL的析构函数确定所述DLL的当前版本。
进一步地,该装置还包括:转换单元,用于将所述数据库升级文件作为所述DLL的资源文件。
进一步地,所述数据库升级文件包括:数据库升级的SQL文件。
进一步地,所述判断单元,用于通过所述DLL的LOAD方法或析构函数,判断所述DLL的当前版本与数据库的当前版本是否匹配。
通过本发明提供的一种DLL与数据库同步的方法及装置,将数据库升级文件预制在DLL中,通过判断DLL的当前版本与数据库的当前版本是否匹配来确定是否对数据库升级,当不匹配时,从DLL中获取数据库升级文件对数据库进行升级,使得DLL与数据库同步,无需通过专门的工具进行升级,也无需通过手动进行升级,更加简单地实现了DLL与数据库的同步。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种DLL与数据库同步的方法的流程图;
图2是本发明一实施例提供的另一种DLL与数据库同步的方法的流程图;
图3是本发明一实施例提供的一种DLL与数据库同步的装置的示意图;
图4是本发明一实施例提供的另一种DLL与数据库同步的装置的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种DLL与数据库同步的方法,该方法可以包括以下步骤:
S0:在DLL中预制数据库升级文件;
S1:确定所述DLL的当前版本和数据库的当前版本;
S2:判断所述DLL的当前版本与所述数据库的当前版本是否匹配,如果不匹配,则执行S3;
S3:从所述DLL中获取所述数据库升级文件,根据所述数据库升级文件对所述数据库进行升级。
通过本发明实施例提供了一种DLL与数据库同步的方法,将数据库升级文件预制在DLL中,通过判断DLL的当前版本与数据库的当前版本是否匹配来确定是否对数据库升级,当不匹配时,从DLL中获取数据库升级文件对数据库进行升级,使得DLL与数据库同步,无需通过专门的工具进行升级,也无需通过手动进行升级,更加简单地实现了DLL与数据库的同步。
在一种可能的实现方式中,所述在DLL中预制数据库升级文件,包括:
在所述DLL中预制所述DLL的每个版本对应的数据库升级文件;
所述S3,包括:
A1:确定与所述数据库的当前版本相匹配的所述DLL的匹配版本;
A2:确定所述DLL的匹配版本与所述DLL的当前版本之间的所述DLL的中间版本;
A3:从所述DLL中获取所述DLL的每个中间版本对应的中间数据库升级文件,以及所述DLL的当前版本对应的当前数据库升级文件;
A4:根据每个中间数据库升级文件和所述当前数据库升级文件,对所述数据库进行升级。
由于DLL与数据库需要同步升级,这样才能保证在调用DLL时不会发生异常,因此,DLL的每个版本都有对应的数据库升级文件。在DLL的当前版本与数据库的当前版本之间相差多个版本时,需要对当前的数据库的版本进行逐个版本的升级,直到升级到与DLL的当前版本相匹配的版本。举例来说,数据库的当前版本为版本1.0,DLL的当前版本为版本4.0,与数据库的当前版本相匹配的DLL的版本为版本1.0,在版本1.0到版本4.0之间,还有版本2.0和版本3.0,因此,在升级数据库时,需要依次通过DLL的版本2.0对应的数据库升级文件、DLL的版本3.0对应的数据库升级文件、DLL的版本4.0对应的数据库升级文件对数据库进行升级。
在一种可能的实现方式中,该方法还包括:预先设置版本标示表,所述版本标示表中存储有DLL的版本号与数据库的版本号的匹配关系;
所述在所述DLL中预制所述DLL的每个版本对应的数据库升级文件,包括:在所述DLL中预制所述DLL的每个版本的版本号对应的数据库升级文件;
所述S1,包括:确定所述DLL的当前版本号和数据库的当前版本号;
所述S2,包括:根据所述版本标示表中的所述匹配关系,判断所述DLL的当前版本号与所述数据库的当前版本号是否匹配,如果不匹配,则执行A1;
所述A1,包括:
根据所述版本标示表中的所述匹配关系,确定与所述数据库的当前版本相匹配的所述DLL的匹配版本的匹配版本号;
所述A2,包括:根据所述版本标示表,确定所述DLL的匹配版本号与所述DLL的当前版本号之间的所述DLL的中间版本号;
所述A3,包括:
从所述DLL中获取所述DLL的每个中间版本号对应的中间数据库升级文件,以及所述DLL的当前版本号对应的当前数据库升级文件。
在该实现方式中,通过版本号来标识版本,DLL的每个版本通过唯一的版本号作为标识,数据库的每个版本通过唯一的版本号作为标识。上述的匹配关系是指版本标示表中对应的DLL的版本号和数据库的版本号是相匹配的。举例来说,一种版本标示表如表1所示,在该实现方式中,可以将相匹配的DLL的版本号和数据库的版本号采用相同的版本号,例如:DLL的版本A与数据库的版本B相匹配,则可以将DLL的版本A的版本号和数据库的版本B的版本号均设置为3.0.5801.30364。
表1
为了尽快的确定DLL的当前版本,在一种可能的实现方式中,所述S1,包括:根据所述DLL的析构函数确定所述DLL的当前版本。
在一种可能的实现方式中,该方法还包括:将所述数据库升级文件作为所述DLL的资源文件。通过该实现方式,可以将数据库升级文件与对应版本的DLL进行绑定。
在一种可能的实现方式中,所述数据库升级文件包括:数据库升级的SQL文件。在该实现方式中,数据库升级的SQL文件中包括用于数据库升级的SQL。具体地,数据库升级的SQL文件可以包括以下代码:
--DBVERSION2.0.4365
alterTABLESDSYSFILTERADDSDSYSFILTER_SQLvarchar(2000)null
go
--DBVERSION2.0.4426
updateSDSYSBUTTONsetSDSYSBUTTON_CL='0'whereSDSYSBUTTON_CLisnull
go
--DBVERSION2.0.4617
altertableSDSYSLISTITEMADDSDSYSLISTITEM_GBCOLORvarchar(255)NULL/*背景颜色设置*/
go
--DBVERSION2.0.4652
altertableSDSYSLISTADDSDSYSLIST_GNBH_URLvarchar(40)NULL/*联查地址ID*/
go
altertableSDSYSLISTADDSDSYSLIST_TITLE_URLvarchar(40)NULL/*联查地址标题*/
go
--DBVERSION3.0.5484
altertableSDSYSLISTADDSDSYSLIST_SKEYvarchar(200)NULL/*标示*/
go
--DBVERSION3.0.5513
alterTABLESDSYSFILTERADDSDSYSFILTER_TIPvarchar(100)null
go
在一种可能的实现方式中,所述S2,包括:
通过所述DLL的LOAD方法或析构函数,判断所述DLL的当前版本与数据库的当前版本是否匹配。具体地,可以通过以下代码实现:
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
如图2所示,本发明实施例提供了一种DLL与数据库同步的方法,该方法可以包括以下步骤:
步骤201:在所述DLL中预制所述DLL的每个版本的版本号对应的数据库升级文件,预先设置版本标示表,所述版本标示表中存储有DLL的版本号与数据库的版本号的匹配关系。
其中,版本标示表可以保存到数据库中。
步骤202:确定所述DLL的当前版本号和数据库的当前版本号。
步骤203:根据所述版本标示表中的所述匹配关系,判断所述DLL的当前版本号与所述数据库的当前版本号是否匹配,如果不匹配,则执行步骤204。
如果匹配,则可以继续后续的业务逻辑。也就是说,用户可以正常使用DLL和数据库。
步骤204:根据所述版本标示表中的所述匹配关系,确定与所述数据库的当前版本相匹配的所述DLL的匹配版本的匹配版本号。
步骤205:根据所述版本标示表,确定所述DLL的匹配版本号与所述DLL的当前版本号之间的所述DLL的中间版本号。
步骤206:从所述DLL中获取所述DLL的每个中间版本号对应的中间数据库升级文件,以及所述DLL的当前版本号对应的当前数据库升级文件。
步骤207:根据每个中间数据库升级文件和所述当前数据库升级文件,对所述数据库进行升级。
如图3、图4所示,本发明实施例提供了一种DLL与数据库同步的装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的一种DLL与数据库同步的装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的一种DLL与数据库同步的装置,包括:
预制单元401,用于在DLL中预制数据库升级文件;
确定单元402,用于确定所述DLL的当前版本和数据库的当前版本;
判断单元403,用于判断所述DLL的当前版本与所述数据库的当前版本是否匹配,如果不匹配,触发升级单元404;
所述升级单元404,用于从所述DLL中获取所述数据库升级文件,根据所述数据库升级文件对所述数据库进行升级。
在一种可能的实现方式中,所述预制单元401,用于在所述DLL中预制所述DLL的每个版本对应的数据库升级文件;
所述升级单元404,包括:
第一确定子单元,用于确定与所述数据库的当前版本相匹配的所述DLL的匹配版本;
第二确定子单元,用于确定所述DLL的匹配版本与所述DLL的当前版本之间的所述DLL的中间版本;
获取子单元,用于从所述DLL中获取所述DLL的每个中间版本对应的中间数据库升级文件,以及所述DLL的当前版本对应的当前数据库升级文件;
升级子单元,用于根据每个中间数据库升级文件和所述当前数据库升级文件,对所述数据库进行升级。
在一种可能的实现方式中,该装置还包括:
设置单元,用于设置版本标示表,所述版本标示表中存储有DLL的版本号与数据库的版本号的匹配关系;
所述预制单元401,用于在所述DLL中预制所述DLL的每个版本的版本号对应的数据库升级文件;
所述确定单元402,用于确定所述DLL的当前版本号和数据库的当前版本号;
所述判断单元403,用于根据所述版本标示表中的所述匹配关系,判断所述DLL的当前版本号与所述数据库的当前版本号是否匹配,如果不匹配,则触发所述第一确定子单元;
所述第一确定子单元,用于根据所述版本标示表中的所述匹配关系,确定与所述数据库的当前版本相匹配的所述DLL的匹配版本的匹配版本号;
所述第二确定子单元,用于根据所述版本标示表,确定所述DLL的匹配版本号与所述DLL的当前版本号之间的所述DLL的中间版本号;
所述获取子单元,用于从所述DLL中获取所述DLL的每个中间版本号对应的中间数据库升级文件,以及所述DLL的当前版本号对应的当前数据库升级文件。
在一种可能的实现方式中,所述确定单元402,用于根据所述DLL的析构函数确定所述DLL的当前版本。
在一种可能的实现方式中,该装置还包括:转换单元,用于将所述数据库升级文件作为所述DLL的资源文件。
在一种可能的实现方式中,所述数据库升级文件包括:数据库升级的SQL文件。
在一种可能的实现方式中,所述判断单元403,用于通过所述DLL的LOAD方法或析构函数,判断所述DLL的当前版本与数据库的当前版本是否匹配。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例提供的一种DLL与数据库同步的方法及装置,具有如下有益效果:
1、通过本发明实施例提供了一种DLL与数据库同步的方法及装置,将数据库升级文件预制在DLL中,通过判断DLL的当前版本与数据库的当前版本是否匹配来确定是否对数据库升级,当不匹配时,从DLL中获取数据库升级文件对数据库进行升级,使得DLL与数据库同步,无需通过专门的工具进行升级,也无需通过手动进行升级,更加简单地实现了DLL与数据库的同步。
2、通过本发明实施例提供了一种DLL与数据库同步的方法及装置,根据DLL的析构函数来确定DLL的当前版本,能够加快获取DLL的当前版本的速度。
3、通过本发明实施例提供了一种DLL与数据库同步的方法及装置,在使用DLL时,先进行DLL与数据库是否匹配的判断,在不匹配时,对数据库进行升级,使得二者相匹配,避免了在使用DLL时出现异常。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃〃〃〃〃〃”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种动态链接库DLL与数据库同步的方法,其特征在于,包括:在DLL中预制数据库升级文件,还包括:
S1:确定所述DLL的当前版本和数据库的当前版本;
S2:判断所述DLL的当前版本与所述数据库的当前版本是否匹配,如果不匹配,则执行S3;
S3:从所述DLL中获取所述数据库升级文件,根据所述数据库升级文件对所述数据库进行升级。
2.根据权利要求1所述的方法,其特征在于,所述在DLL中预制数据库升级文件,包括:
在所述DLL中预制所述DLL的每个版本对应的数据库升级文件;
所述S3,包括:
A1:确定与所述数据库的当前版本相匹配的所述DLL的匹配版本;
A2:确定所述DLL的匹配版本与所述DLL的当前版本之间的所述DLL的中间版本;
A3:从所述DLL中获取所述DLL的每个中间版本对应的中间数据库升级文件,以及所述DLL的当前版本对应的当前数据库升级文件;
A4:根据每个中间数据库升级文件和所述当前数据库升级文件,对所述数据库进行升级。
3.根据权利要求2所述的方法,其特征在于,还包括:预先设置版本标示表,所述版本标示表中存储有DLL的版本号与数据库的版本号的匹配关系;
所述在所述DLL中预制所述DLL的每个版本对应的数据库升级文件,包括:在所述DLL中预制所述DLL的每个版本的版本号对应的数据库升级文件;
所述S1,包括:确定所述DLL的当前版本号和数据库的当前版本号;
所述S2,包括:根据所述版本标示表中的所述匹配关系,判断所述DLL的当前版本号与所述数据库的当前版本号是否匹配,如果不匹配,则执行A1;
所述A1,包括:
根据所述版本标示表中的所述匹配关系,确定与所述数据库的当前版本相匹配的所述DLL的匹配版本的匹配版本号;
所述A2,包括:根据所述版本标示表,确定所述DLL的匹配版本号与所述DLL的当前版本号之间的所述DLL的中间版本号;
所述A3,包括:
从所述DLL中获取所述DLL的每个中间版本号对应的中间数据库升级文件,以及所述DLL的当前版本号对应的当前数据库升级文件。
4.根据权利要求1所述的方法,其特征在于,所述S1,包括:根据所述DLL的析构函数确定所述DLL的当前版本;
和/或,
还包括:将所述数据库升级文件作为所述DLL的资源文件。
5.根据权利要求1-4中任一所述的方法,其特征在于,所述数据库升级文件包括:数据库升级的SQL文件;
和/或,
所述S2,包括:
通过所述DLL的LOAD方法或析构函数,判断所述DLL的当前版本与数据库的当前版本是否匹配。
6.一种动态链接库DLL与数据库同步的装置,其特征在于,包括:
预制单元,用于在DLL中预制数据库升级文件;
确定单元,用于确定所述DLL的当前版本和数据库的当前版本;
判断单元,用于判断所述DLL的当前版本与所述数据库的当前版本是否匹配,如果不匹配,触发升级单元;
所述升级单元,用于从所述DLL中获取所述数据库升级文件,根据所述数据库升级文件对所述数据库进行升级。
7.根据权利要求6所述的装置,其特征在于,所述预制单元,用于在所述DLL中预制所述DLL的每个版本对应的数据库升级文件;
所述升级单元,包括:
第一确定子单元,用于确定与所述数据库的当前版本相匹配的所述DLL的匹配版本;
第二确定子单元,用于确定所述DLL的匹配版本与所述DLL的当前版本之间的所述DLL的中间版本;
获取子单元,用于从所述DLL中获取所述DLL的每个中间版本对应的中间数据库升级文件,以及所述DLL的当前版本对应的当前数据库升级文件;
升级子单元,用于根据每个中间数据库升级文件和所述当前数据库升级文件,对所述数据库进行升级。
8.根据权利要求7所述的装置,其特征在于,还包括:
设置单元,用于设置版本标示表,所述版本标示表中存储有DLL的版本号与数据库的版本号的匹配关系;
所述预制单元,用于在所述DLL中预制所述DLL的每个版本的版本号对应的数据库升级文件;
所述确定单元,用于确定所述DLL的当前版本号和数据库的当前版本号;
所述判断单元,用于根据所述版本标示表中的所述匹配关系,判断所述DLL的当前版本号与所述数据库的当前版本号是否匹配,如果不匹配,则触发所述第一确定子单元;
所述第一确定子单元,用于根据所述版本标示表中的所述匹配关系,确定与所述数据库的当前版本相匹配的所述DLL的匹配版本的匹配版本号;
所述第二确定子单元,用于根据所述版本标示表,确定所述DLL的匹配版本号与所述DLL的当前版本号之间的所述DLL的中间版本号;
所述获取子单元,用于从所述DLL中获取所述DLL的每个中间版本号对应的中间数据库升级文件,以及所述DLL的当前版本号对应的当前数据库升级文件。
9.根据权利要求6所述的装置,其特征在于,所述确定单元,用于根据所述DLL的析构函数确定所述DLL的当前版本;
和/或,
该装置还包括:转换单元,用于将所述数据库升级文件作为所述DLL的资源文件。
10.根据权利要求6-9中任一所述的装置,其特征在于,所述数据库升级文件包括:数据库升级的SQL文件;
和/或,
所述判断单元,用于通过所述DLL的LOAD方法或析构函数,判断所述DLL的当前版本与数据库的当前版本是否匹配。
CN201610004575.XA 2016-01-04 2016-01-04 一种dll与数据库同步的方法及装置 Pending CN105700917A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610004575.XA CN105700917A (zh) 2016-01-04 2016-01-04 一种dll与数据库同步的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610004575.XA CN105700917A (zh) 2016-01-04 2016-01-04 一种dll与数据库同步的方法及装置

Publications (1)

Publication Number Publication Date
CN105700917A true CN105700917A (zh) 2016-06-22

Family

ID=56226080

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610004575.XA Pending CN105700917A (zh) 2016-01-04 2016-01-04 一种dll与数据库同步的方法及装置

Country Status (1)

Country Link
CN (1) CN105700917A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528780A (zh) * 2016-11-08 2017-03-22 努比亚技术有限公司 一种网络数据库的升级方法及移动终端
CN107357907A (zh) * 2017-07-17 2017-11-17 郑州云海信息技术有限公司 一种支持跨版本的数据库升级方法及装置
CN108595167A (zh) * 2018-03-16 2018-09-28 深圳极智联合科技股份有限公司 一种基于SQL Server的程序管理方法和***
CN109634634A (zh) * 2018-12-12 2019-04-16 浪潮(北京)电子信息产业有限公司 一种bmc固件升级方法、装置及终端

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101794222A (zh) * 2010-01-13 2010-08-04 腾讯科技(深圳)有限公司 软件版本搜集方法、管理***及软件升级检测方法和***
CN102419712A (zh) * 2011-12-28 2012-04-18 北京华环电子股份有限公司 一种用户端软件升级的方法及装置
CN102495733A (zh) * 2011-12-08 2012-06-13 方正国际软件有限公司 应用程序与相关数据库脚本兼容性检测和升级维护的方法
WO2013149460A1 (zh) * 2012-04-01 2013-10-10 广东欧珀移动通信有限公司 一种Android手持设备连续增量的空中升级方法
CN104052818A (zh) * 2014-06-27 2014-09-17 青岛海信移动通信技术股份有限公司 一种移动终端的版本升级方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101794222A (zh) * 2010-01-13 2010-08-04 腾讯科技(深圳)有限公司 软件版本搜集方法、管理***及软件升级检测方法和***
CN102495733A (zh) * 2011-12-08 2012-06-13 方正国际软件有限公司 应用程序与相关数据库脚本兼容性检测和升级维护的方法
CN102419712A (zh) * 2011-12-28 2012-04-18 北京华环电子股份有限公司 一种用户端软件升级的方法及装置
WO2013149460A1 (zh) * 2012-04-01 2013-10-10 广东欧珀移动通信有限公司 一种Android手持设备连续增量的空中升级方法
CN104052818A (zh) * 2014-06-27 2014-09-17 青岛海信移动通信技术股份有限公司 一种移动终端的版本升级方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528780A (zh) * 2016-11-08 2017-03-22 努比亚技术有限公司 一种网络数据库的升级方法及移动终端
CN106528780B (zh) * 2016-11-08 2021-01-26 努比亚技术有限公司 一种网络数据库的升级方法及移动终端
CN107357907A (zh) * 2017-07-17 2017-11-17 郑州云海信息技术有限公司 一种支持跨版本的数据库升级方法及装置
CN108595167A (zh) * 2018-03-16 2018-09-28 深圳极智联合科技股份有限公司 一种基于SQL Server的程序管理方法和***
CN109634634A (zh) * 2018-12-12 2019-04-16 浪潮(北京)电子信息产业有限公司 一种bmc固件升级方法、装置及终端

Similar Documents

Publication Publication Date Title
US10908925B2 (en) Dynamic loading method, and target file creation method and apparatus
US8887135B2 (en) Generating test cases for functional testing of a software application
CN107122368B (zh) 一种数据校验方法、装置及电子设备
WO2016026328A1 (zh) 一种信息处理方法、装置及计算机存储介质
CN107741903A (zh) 应用程序兼容性测试方法、装置、计算机设备和存储介质
CN105700917A (zh) 一种dll与数据库同步的方法及装置
WO2018040270A1 (zh) 在Windows***中加载Linux***ELF文件的方法及装置
CN105468373A (zh) 一种分支合并方法及装置
CN103593281A (zh) 测试***及测试方法
US20160246709A1 (en) Source code unit testing using an indexing tool
CN111615688A (zh) 一种断言验证代码绑定方法及装置
US10175958B2 (en) Acquiring identification of an application lifecycle management entity associated with similar code
CN112463596B (zh) 测试用例数据的处理方法、装置、设备以及处理设备
CN107766228B (zh) 一种基于多语种的自动化测试方法和装置
WO2023169164A1 (zh) 应用程序的修复方法、装置、计算机设备以及存储介质
CN114816772B (zh) 基于兼容层运行的应用的排错方法、排错***及计算设备
CN115757172A (zh) 测试执行方法、装置、存储介质及计算机设备
CN113805861B (zh) 基于机器学习的代码生成方法、代码编辑***及存储介质
CN106844205B (zh) 驱动程序调试方法及***
CN112003837A (zh) 基于Modbus协议的设备智能适配方法、装置及存储介质
CN113885963B (zh) 一种二次开发文件执行方法、装置及存储介质
JP2015011685A (ja) ビジネスルール管理システム及びビジネスルール管理方法
CN113722208B (zh) 软件测试报表的项目进度验证方法及装置
CN116580748B (zh) 内存芯片测试治具的配置方法、装置、设备及存储介质
CN112541182B (zh) 内核vfs层***修复方法、装置、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160622