CN100570604C - 一种关系数据库应用自动升级的方法 - Google Patents

一种关系数据库应用自动升级的方法 Download PDF

Info

Publication number
CN100570604C
CN100570604C CNB200610114522XA CN200610114522A CN100570604C CN 100570604 C CN100570604 C CN 100570604C CN B200610114522X A CNB200610114522X A CN B200610114522XA CN 200610114522 A CN200610114522 A CN 200610114522A CN 100570604 C CN100570604 C CN 100570604C
Authority
CN
China
Prior art keywords
data
tables
edition data
edition
field
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.)
Expired - Fee Related
Application number
CNB200610114522XA
Other languages
English (en)
Other versions
CN101183361A (zh
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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CNB200610114522XA priority Critical patent/CN100570604C/zh
Publication of CN101183361A publication Critical patent/CN101183361A/zh
Application granted granted Critical
Publication of CN100570604C publication Critical patent/CN100570604C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种关系数据库应用自动升级的方法,包括如下步骤:创建目的版本数据库结构;数据库自动升级系统扫描分析所述源版本数据库结构,以获得所述源版本数据库结构信息;数据库自动升级系统扫描分析所述目的版本数据库结构,以获得所述目的版本数据库结构信息;对比分析源、目的版本数据库结构信息,生成升级策略;依照升级策略执行升级。本发明通过自动分析升级源版本、目的版本的数据库结构,自动生成升级策略,真实、完整地反映了源版本、目的版本的数据库信息,避免了定制编写升级工具的主观臆测可能导致的升级工具与现场版本的信息脱节,可以方便灵活地完成任意版本之间的数据库升级以及回滚。

Description

一种关系数据库应用自动升级的方法
技术领域
本发明涉及一种升级方法,特别是涉及一种关系数据库应用的自动升级方法。
背景技术
为满足当前各种业务开发、运营管理的需要,设备或者软件产品供应商基于MS SQL、Oracle、Sybase等商用数据库软件,开发了各种各样的业务软件。主要形式为利用商用数据库软件创建占用一定存储空间大小的数据库实体、一系列的关系数据表,可能还有存储过程、触发器等数据库元素。但是由于新业务新需求的不断涌现、业务量的增长、软件版本的故障修复和功能增强,就会频繁发生对业务数据库系统的升级。数据库的升级主要包括表的增删、表结构的更改、空间的修改、存储过程等元素的变更等。为本文叙述方便,我们把需要升级的原用户数据库系统称为升级源版本,把升级后的目标用户数据库系统称为升级目标版本。传统的升级方法是由研发人员根据升级源版本、升级目标版本的特性来定制开发版本升级工具。这种升级工具是与升级源版本、升级目标版本紧密相关的,是由研发人员人为分析两个版本的差异而得出来的,这种升级方法有以下缺点:
1、不能从用户数据库系统本身判断是否两个版本间数据库结构发生了修改,只能根据版本的版本号来进行判断版本中哪些数据库结构有了修改,这种判断难免会出现误差。例如有些对于数据库的修改未能反应到版本号的变化上,导致不同的数据库结构(可能是很微小的)对应到同一个版本号上,这时根据版本号来定制的数据库升级工具就不能完全正确升级。有可能在产品运营现场,用户进行过一些修改,或者技术支持人员现场做过一些改动,这时定制的数据库升级工具是无法感知这些现场变化的;
2、在进行版本升级的时候在理论上会出现多到多的多种版本转换情况,这样,依靠不同版本号来定制版本升级工具,就会使数据升级工具维护工作量随着版本号的增加急剧增大。当发布一个新版本时,必须针对此前的所有版本制作升级到新版本的升级工具。当然也可以通过变通方法,比如进行梯次升级,逐步升级到最新版本,但这会导致升级过程繁琐、耗时,出错概率加大;
3、这种定制的版本升级工具也不利于升级失败后的回滚。由于升级工具本身并不能识别不同版本的内部数据库结构,所以逆向回滚也需要针对不同版本进行定制,费时费力。
如果能够实现一种方法,对升级源版本、升级目标版本的关系数据库的数据结构特性进行自动分析,然后生成升级策略,最终按此策略进行自动升级,则可以解决以上问题,实现方便灵活的关系数据自动升级。对于某些数据库结构差异非常大,用户需要定制升级策略的,也可以提供自动分析结果,使得用户在此基础上进行部分指定升级策略,从而实现准确完整的升级。
发明内容
本发明所要解决的问题在于,提供一种关系数据库应用自动升级的方法,以实现在任意版本的数据库之间方便灵活的自动升级。
为了实现上述目的,本发明公开了一种关系数据库应用自动升级的方法,用于实现从源版本数据库到目的版本数据库的升级,所述关系数据库设置于计算机上,所述计算机上还设置有用于控制所述关系数据库的数据库自动升级系统,该方法包括如下步骤:
创建目的版本数据库结构;
所述数据库自动升级系统扫描分析所述源版本数据库结构,以获得所述源版本数据库结构信息;
所述数据库自动升级系统扫描分析所述目的版本数据库结构,以获得所述目的版本数据库结构信息;
对比分析所述源、目的版本数据库结构信息,生成升级策略;
依照所述升级策略执行升级。
所述对比分析所述源、目的版本数据库结构信息,生成升级策略的步骤进一步包括:
对于所述目的版本数据库结构相对源版本数据库结构新增的数据表,生成创建所述数据表的升级策略;
或者,对于只存在于所述源版本数据库结构而不存在于所述目的版本数据库结构的数据表,生成忽略所述数据表的升级策略;
或者,对于所述目的版本数据库结构相对源版本数据库结构新增的字段,生成创建所述字段的升级策略;
或者,对于只存在于所述源版本数据库结构而不存在于所述目的版本数据库结构的字段,生成忽略所述字段的升级策略;
或者,对于在所述源、目的版本数据库结构中的相同数据表的具有相容属性的相同字段,生成直接升级的升级策略;
或者,对于在所述源、目的版本数据库结构中同名的存储过程、触发器,生成直接替换升级的升级策略。
所述对比分析所述源、目的版本数据库结构信息,生成升级策略的步骤进一步包括:
步骤1,所述数据库自动升级系统以所述目的版本数据库的数据表表名为索引,依次将目的版本数据库的数据表的表名与源版本数据库的每个数据表表名进行对比,判断是否相同,如果相同,转步骤2,如果不同,转步骤3;
步骤2,以所述数据表中的字段名为索引,依次将所述目的版本数据库的所述数据表中的字段名与所述源版本数据库的所述数据表中的每个字段名进行对比,以判断是否相同,如果相同,转步骤4,如果不同,转步骤5;
步骤3,生成在所述目的版本数据库中创建所述数据表的升级策略,如果所述目的版本数据库的数据表未全部对比结束,转步骤1,否则转所述执行升级的步骤;
步骤4,判断所述目的版本数据库的所述字段的属性是否与所述源版本数据库的所述字段的属性相容,如果相容,转步骤6;
步骤5,生成在所述目的版本数据库的所述数据表中创建所述字段的升级策略,如果所述数据表的字段未全部对比结束,转步骤2,如果所述数据表的字段已全部对比结束但所述目的版本数据库的数据表未全部对比结束,转步骤1,如果均对比结束,转所述执行升级的步骤;
步骤6,生成直接升级的升级策略,如果所述数据表的字段未全部对比结束,转步骤2,如果所述数据表的字段已全部对比结束但所述目的版本数据库的数据表未全部对比结束,转步骤1,如果均对比结束,转所述执行升级的步骤。
所述的方法,还包括:为所述目的版本数据库结构中新增的字段填入已设置的缺省值。
所述执行所述直接升级的升级策略进一步包括:
将所述源版本数据库中所述数据表的所述字段的数据直接插入所述目的版本数据库中所述数据表的所述字段中。
所述数据库自动升级系统扫描分析所述源、目的版本数据库结构的步骤,是通过分析所述源、目的版本数据库的系统表的方式实现的。
所述对比分析所述源、目的版本数据库结构信息,生成升级策略的步骤之后还包括:以图形用户界面方式显示所述源、目的版本数据库结构信息,或者所述源、目的版本数据库的数据表、字段的转换关系图。
所述源、目的版本数据库的数据表、字段的转换关系图可被手动调整。
所述依照所述升级策略进行升级的步骤之后还包括:执行外挂升级补丁。
所述步骤4之后还包括,如果不相容,执行外挂升级补丁。
本发明通过自动分析升级源版本、目的版本的数据库结构,自动生成升级策略,真实、完整地反映了源版本、目的版本的数据库信息,避免了定制编写升级工具的主观臆测可能导致的升级工具与现场版本的信息脱节,可以方便灵活地完成任意版本之间的数据库升级以及回滚。
附图说明
图1为本发明的关系数据库设置于一服务器上的整体结构示意图;
图2为本发明数据库的结构示意图;
图3、4为本发明自动升级的详细步骤流程图;
图5为显示在用户操作显示界面上的源、目的版本的数据库结构图。
具体实施方式
为了让本发明的上述目的、优点和特征能更清楚,以下结合实施例进行详细说明。但下述实施例与附图并不用于限定本发明的范围。
本发明所实现的是一种关系数据库应用的自动升级的方法。是针对基于商业关系数据库系统开发的用户数据库系统,即升级对象不是商业数据库系统本身,而是用户数据库的内容。
图1所示为本发明的关系数据库设置于一服务器上的整体结构示意图。如图所示,服务器1上设置有关系数据库10,此处以单用户数据库系统为例,但不限于此。其中,具体的组成结构包括:数据库自动升级系统100、数据库200、用户操作显示界面300、操作系统400。数据库自动升级系统100是为数据库的建立、使用和维护而设置的软件。它建立在操作系统400的基础上,是位于操作系统与用户之间的一种数据管理软件,负责对数据库应用升级进行统一的管理和控制。用户通过用户操作显示界面300发出的或者应用程序中的各种与升级操作相关的命令,都要通过数据库自动升级系统100来执行。数据库200中存储有各种关系数据表以及系统数据表,具体描述见图2。操作系统400为其他所有模块提供运行支撑环境。
数据库200可存储有多个数据库版本的数据,如图2所示,为当前运行的数据库版本在数据库200中的当前版本存储单元201的示意图。其中包括关系数据表A1、A2、A3。以A1为例,A1中又包括多个字段B1、B2、B3,而每个字段又包括各自的属性,譬如B1对应C1、B2对应C2、B3对应C3,同时拥有其对应的数据。当前版本存储单元201同时还包括sysobjects、sysindexes、syscolumns等多个系统表。该sysobjects系统表包括存储数据库内的每个对象(数据表、约束、默认值、日志、规则、存储过程等)的基本信息。sysindexes系统表存储有当前数据库中的各数据表的索引、行记录等信息。syscolumns系统表存储每个表和视图中的字段属性信息。系统表描述了数据库的结构特征。
在用户的实际应用过程中,关系数据库应用的升级通常涉及:新增数据表、数据表增加属性字段、数据表字段属性扩展。为了保证升级前后版本的兼容性,升级的过程应该遵循以下原则:
1、新旧版本同一数据表表名应该保持不变;
2、新旧版本同一数据表中的同一字段其字段名应该保持不变;
3、同一字段升级前后其字段属性应相容;
4、新增数据表直接增加;
5、新增字段直接增加,如果设置了缺省值,则填入缺省值;
6、旧版本中存在,但新版本没有的数据表、字段,在升级过程中自动忽略;
7、对于同名的存储过程、触发器等数据库对象直接替换升级。
以下结合图3、4说明本发明自动升级的方法的详细步骤。
首先,创建目的版本数据库结构(步骤301)。用户可以利用用户操作显示界面300输入数据,设置新版本的即目的版本的数据库结构,并存储在数据库200的一新建数据库存储单元202中,与当前版本存储单元201类似的,该新建数据库存储单元202中还包括与该目的版本的数据库结构相应的系统表。该目的版本数据库可能相对源版本删除了部分数据表、增加了数据表、扩充了字段或字段改变了属性。
如果此时用户通过用户操作显示界面300发出升级的命令,则数据库自动升级系统100接到命令后,分别对源版本数据库结构以及目的版本数据库结构进行扫描分析(步骤302)。对于源版本数据库,可通过分析sysobjects等系统表的方式,获得所有数据表、数据字段、存储过程、触发器、缺省值、索引等数据库元素信息,通过分析syscolumns可获得每个表的详细信息。具体的扫描实现过程例如为:
Select name,colid,usertype,length,prec,scale,Status,cDefaultfrom syscolumns where object_name(id)=TableName order by ColID。
并将分析结果按照特定格式存储于数据库200的当前版本存储单元201中。对于目的版本数据库,采用同样方法分析sysobjects、syscolumns等系统表,获得目的版本数据库所有信息,同样按照特定格式存储于数据库200的新建数据库存储单元202中。该经扫描分析后的目的版本的数据库结构,可以做为模板信息,以便于一次扫描,后续可多次供数据库自动升级系统读取。
利用数据库自动升级系统100对比分析源、目的版本数据库结构信息,自动生成升级策略(步骤303),该升级策略通过升级SQL脚本的方式体现,自动生成,对应完成创建新数据表、触发器、存储过程等,或者实现旧数据表中提取数据插入到新数据表中,并把升级脚本存储于数据库中。该步骤303具体包括:
对于同名的存储过程、触发器等数据库对象直接替换升级(步骤400)。如果不同名,则需要进行重新创建。
以目的版本数据库的数据表表名为索引,依次将目的版本数据库的数据表的表名与源版本数据库的每个数据表表名进行对比,判断是否相同(步骤401)。如发现源、目的版本数据库中具有相同表名,则认为是同一张表,将对它们的表结构进一步对比分析,转步骤402。否则就认为是两张不相关的数据表,无法对应升级,除非用户通过GUI(图形用户界面)方式手动调整升级策略,并转步骤404。
在源、目的版本数据库的所述相同数据表中,以字段名做为索引,依次将目的版本数据库的字段名与源版本数据库的每个字段名进行对比,以判断是否相同(步骤402)。如果在源、目的版本数据库的相同数据表中具有相同的字段名,则对属性进行进一步分析,转步骤403,如果发现不同的字段,则认为是两个独立的数据字段,无法对应升级,除非用户通过GUI方式手动调整升级策略,并转步骤405。
在源、目的版本数据库的相同数据表的相同字段中,判断属性是否相容(步骤403)。如果判断目的版本数据库中该字段属性与源版本数据库中该字段属性完全不相容,则源版本数据库中该字段所对应的数据无法升级到目的版本数据库中该数据表相应字段中,依照升级原则,遇到该情况将采取拒绝升级的处理方式,但是用户可通过执行外挂升级补丁的方式实现升级(步骤4032),如果属性完全相容,可以对应升级(步骤4031),即目的版本中该字段的数据直接插入源版本的对应字段中。所谓的属性相容,即是指字符串容量增加,整型值容量增加,整型值转化为字符串等。
步骤404,这种情况可唯一对应目的版本数据库中的新增数据表的情况,因此在目的版本数据库中直接创建该数据表。即如果存在目的版本数据库中没有某表而源版本数据库中有该表的情况,则该以目的版本中数据表名为索引进行对比的方式,可以直接忽略该数据表。
步骤405,这种情况可唯一对应目的版本数据库对应数据表内的新增字段的情况,直接创建该字段,如果设置了缺省值,则填入缺省值。以本发明所述方法进行对比,可直接忽略目的版本数据库中没有而源版本数据库中有的字段。
所述步骤4031、4032、405之后还包括,如果所述数据表的字段未全部对比结束,转步骤402继续完成对比,如果所述数据表的字段已全部对比结束但所述目的版本数据库的数据表未全部对比结束,转步骤401,如果均对比结束,继续后续的步骤。
所述步骤404之后还包括,如果所述目的版本数据库的数据表未全部对比结束,转步骤401,否则继续后续的步骤。
上述判断过程中所自动生成的,如对应升级、增加字段/表名或直接忽略的升级策略,以升级脚本的方式自动生成,以供执行升级时的调用。而所谓对应升级的策略,既是源版本数据库中的数据可直接存储于目的版本数据库的对应位置。直接忽略的策略,既是源版本数据库中的相应数据,被忽略,不能存储于目的版本数据库中。
上述判断过程表明,源版本数据库中存在,但目的版本没有的数据表、字段,在升级过程中自动忽略;这些数据表应该是在目的版本数据库中被废弃了,或者是一些临时表,没有必要进行升级。当然,如果有些数据表是在工作过程中动态生成的,需要升级到目的版本中,则用户可后继通过GUI方式手动设置升级。目的版本中新增的数据表、字段都直接增加。
上述扫描后的源、目的版本数据库结构特性,以及生成的升级策略将以GUI形式在用户操作显示界面300上呈现给用户,以供用户确认,用户也可以手动调整上述升级策略(步骤304)。如果得到确认,用户将通过用户操作显示界面300发出升级的指令,启动升级的过程,则数据库将按照已经设置的升级策略进行升级(步骤305),即执行升级策略对应的SQL升级脚本,则升级完成。
但对于以下非常规情况需要依赖于用户自定义升级策略,或者外挂升级补丁完成:
1、表名、字段名更改;
2、不同名的数据表、字段之间的数据转换;
3、新增数据表、新增字段的批量赋值。
面对上述情况时,用户可在步骤304通过GUI方式进行手动设置升级策略,同时在步骤305后,还需执行步骤306,即执行外挂升级补丁的步骤。
以下以一个学生信息管理系统为例,描述本发明的实现过程。
学生信息管理系统V1.0包括四张数据表:学生基本信息表、学生历史信息表、学生成绩跟踪表、班级师资配置表。其中学生基本信息表包括以下字段:姓名、性别、出生年月、班级。姓名字段的属性为字符型,并且支持8个字符以适用于最长4个汉字的名字。
用户通过用户操作显示界面建立了新版本的学生信息管理系统V2.0的整体结构,并保存在服务器中。其所进行的功能扩展包括:增加了学生身体素质跟踪表、学生社会活动跟踪表。同时,对于学生基本信息表,也作了如下变化:
1、扩展了“姓名”字段的属性,扩展到40个字符的表示范围;
2、增加了新字段“联系方式”、“父亲”、“母亲”、“家庭住址”。
由于学生信息管理系统V1.0中已经有了几千人的学生信息,为了将V1.0中的数据表内容同步到V2.0中,就需要进行该数据库的升级。
用户随即通过用户操作显示界面,譬如利用键盘输入指令的方式,发出升级命令。数据库自动升级系统100对源、目的版本的数据库结构特点进行扫描对比后,在用户操作显示界面上显示如图5所示的源、目的版本的数据库结构图。这里主要显示了数据表、表字段的信息,当然,还可以逐层细化显示字段的类型、大小、缺省值等约束条件,存储过程等数据库元素信息,以及升级策略中各数据表、字段的转换关系图,以使用户更加清晰直观的了解升级的过程。
经过扫描对比发现,V2.0新增了表名“学生身体素质跟踪表”、“学生社会活动跟踪表”,新增了字段“联系方式”、“父亲”、“母亲”、“家庭住址”,扩展了“姓名”字段的属性。对于新增表,由于V1.0中没有相关内容,因此直接增加新表即可,而新增的字段则自动创建该字段并填入缺省值即可。“姓名”字段由于属性的扩展是前后相容的,故也可直接升级。数据库自动升级系统100相应生成的升级脚本例如为:
Create table学生身体素质跟踪表(Name char(20)NULL,HealthStatusTINYINT NULL DEFAULT 0,DetailInf char(200))
Create table学生社会活动跟踪表(Name char(20)NULL,SocialActchar(200))
Create table new学生基本信息表(Name Char(20)NULL,Gender TINYINTNULL DEFAULT 0,Birth Char(20)NULL,Class Char(20)NULL,Contact Char(20)NULL,Father Char(20)NULL,Mother Char(20)NULL,Addr Char(50)NULL)
Insert into new学生基本信息表selectName,Gender,Birth,Class,NULL,NULL,NULL,NULL from学生基本信息表
rename table学生基本信息表old学生基本信息表
rename table new学生基本信息表 学生基本信息表
如果用户需要改变表名进行对应升级时,例如,欲将“学生历史信息表”的内容升级入“学生成绩跟踪表”内,可在如图5所示界面时,手动调整数据的升级关联,通过外挂升级补丁实现。
当用户对源、目的版本的数据库结构图/转换图以及升级脚本审查确认通过时,发出确认升级命令,则数据库自动升级系统将依照升级脚本的内容进行升级。如果用户需要进行非常规情况的升级,则还需额外启动执行某些外挂升级补丁,从而完成升级的过程。
本发明所述方法还可逆向执行,即从当前版本回滚到先前的版本,使得数据库管理更加便利。
本发明通过自动分析升级源版本、目的版本的数据库结构,自动生成升级策略,真实、完整地反映了源版本、目的版本的数据库信息,避免了定制编写升级工具的主观臆测可能导致的升级工具与现场版本的信息脱节,可以方便灵活地完成任意版本之间的数据库升级以及回滚。
以上所述仅为本发明的最佳可行实施例,非拘限本发明的专利范围,凡运用本发明说明书及附图所做的等效变化,均同理包括于本发明的范围内。

Claims (8)

1、一种关系数据库应用自动升级的方法,用于实现从源版本数据库到目的版本数据库的升级,所述关系数据库设置于计算机上,所述计算机上还设置有用于控制所述关系数据库的数据库自动升级系统,其特征在于,该方法包括如下步骤:
步骤1,创建目的版本数据库结构;
步骤2,所述数据库自动升级系统扫描分析所述源版本数据库结构,以获得所述源版本数据库结构信息;
步骤3,所述数据库自动升级系统扫描分析所述目的版本数据库结构,以获得所述目的版本数据库结构信息;
对比分析所述源、目的版本数据库结构信息;
步骤4,所述数据库自动升级系统以所述目的版本数据库的数据表表名为索引,依次将目的版本数据库的数据表的表名与源版本数据库的每个数据表表名进行对比,判断是否相同,如果相同,转步骤5,如果不同,转步骤6;
步骤5,以所述数据表中的字段名为索引,依次将所述目的版本数据库的所述数据表中的字段名与所述源版本数据库的所述数据表中的每个字段名进行对比,以判断是否相同,如果相同,转步骤7,如果不同,转步骤8;
步骤6,生成在所述目的版本数据库中创建所述数据表的升级策略,如果所述目的版本数据库的数据表未全部对比结束,转步骤4,否则转所述执行升级的步骤;
步骤7,判断所述目的版本数据库的所述字段的属性是否与所述源版本数据库的所述字段的属性相容,如果相容,转步骤9;
步骤8,生成在所述目的版本数据库的所述数据表中创建所述字段的升级策略,如果所述数据表的字段未全部对比结束,转步骤5,如果所述数据表的字段已全部对比结束但所述目的版本数据库的数据表未全部对比结束,转步骤4,如果均对比结束,转所述执行升级的步骤;
步骤9,生成直接升级的升级策略,如果所述数据表的字段未全部对比结束,转步骤5,如果所述数据表的字段已全部对比结束但所述目的版本数据库的数据表未全部对比结束,转步骤4,如果均对比结束,转所述执行升级的步骤;
步骤10、依照所述升级策略执行升级;
其中:
对于所述目的版本数据库结构相对源版本数据库结构新增的数据表,生成创建所述数据表的升级策略;
或者,对于只存在于所述源版本数据库结构而不存在于所述目的版本数据库结构的数据表,生成忽略所述数据表的升级策略;
或者,对于所述目的版本数据库结构相对源版本数据库结构新增的字段,生成创建所述字段的升级策略;
或者,对于只存在于所述源版本数据库结构而不存在于所述目的版本数据库结构的字段,生成忽略所述字段的升级策略;
或者,对于在所述源、目的版本数据库结构中的相同数据表的具有相容属性的相同字段,生成直接升级的升级策略;
或者,对于在所述源、目的版本数据库结构中同名的存储过程、触发器,生成直接替换升级的升级策略。
2、如权利要求1所述的方法,其特征在于,还包括:
为所述目的版本数据库结构中新增的字段填入已设置的缺省值。
3、如权利要求1所述的方法,其特征在于,执行所述直接升级的升级策略进一步包括:
将所述源版本数据库中所述数据表的所述字段的数据直接插入所述目的版本数据库中所述数据表的所述字段中。
4、如权利要求1、2或3所述的方法,其特征在于,所述数据库自动升级系统扫描分析所述源、目的版本数据库结构的步骤,是通过分析所述源、目的版本数据库的系统表的方式实现的。
5、如权利要求1、2或3所述的方法,其特征在于,对比分析所述源、目的版本数据库结构信息,生成升级策略的步骤之后还包括:以图形用户界面方式显示所述源、目的版本数据库结构信息,或者所述源、目的版本数据库的数据表、字段的转换关系图。
6、如权利要求5所述的方法,其特征在于,所述源、目的版本数据库的数据表、字段的转换关系图可被手动调整。
7、如权利要求5所述的方法,其特征在于,所述依照所述升级策略进行升级的步骤之后还包括:
执行外挂升级补丁。
8、如权利要求1所述的方法,其特征在于,所述步骤4之后还包括,如果不相容,执行外挂升级补丁。
CNB200610114522XA 2006-11-13 2006-11-13 一种关系数据库应用自动升级的方法 Expired - Fee Related CN100570604C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200610114522XA CN100570604C (zh) 2006-11-13 2006-11-13 一种关系数据库应用自动升级的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200610114522XA CN100570604C (zh) 2006-11-13 2006-11-13 一种关系数据库应用自动升级的方法

Publications (2)

Publication Number Publication Date
CN101183361A CN101183361A (zh) 2008-05-21
CN100570604C true CN100570604C (zh) 2009-12-16

Family

ID=39448642

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200610114522XA Expired - Fee Related CN100570604C (zh) 2006-11-13 2006-11-13 一种关系数据库应用自动升级的方法

Country Status (1)

Country Link
CN (1) CN100570604C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335436A (zh) * 2014-08-11 2016-02-17 方正国际软件(北京)有限公司 一种升级数据库结构的方法和设备

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402452B2 (en) * 2009-04-02 2013-03-19 International Business Machines Corporation Automatically recommending an upgrade approach for a customizable software product
CN101533356B (zh) * 2009-04-21 2013-02-27 华为技术有限公司 一种实现软件在线升级的方法、装置及系统
CN102096671A (zh) * 2009-12-14 2011-06-15 深圳速浪数字技术有限公司 一种boss数据库升级脚本的生成方法和设备
CN101908064A (zh) * 2010-07-20 2010-12-08 中兴通讯股份有限公司 数据库备份恢复方法和装置
CN102411588A (zh) * 2010-09-26 2012-04-11 金蝶软件(中国)有限公司 数据表的对比检验方法及系统
CN102065413B (zh) * 2010-11-17 2014-03-12 北京北方烽火科技有限公司 数据库升级方法及系统、基站自启动方法及系统
US8612405B1 (en) 2011-09-30 2013-12-17 Emc Corporation System and method of dynamic data object upgrades
US9164751B2 (en) * 2011-09-30 2015-10-20 Emc Corporation System and method of rolling upgrades of data traits
CN103294724B (zh) * 2012-03-05 2018-11-23 百度在线网络技术(北京)有限公司 一种数据库结构的管理方法及系统
CN102902707B (zh) * 2012-08-01 2016-03-30 杭州华三通信技术有限公司 不同版本二进制数据兼容的方法及数据版本转换系统
CN102890720A (zh) * 2012-10-16 2013-01-23 南京通达海信息技术有限公司 数据库检查维护方法
CN102902818A (zh) * 2012-10-26 2013-01-30 杭州迪普科技有限公司 一种数据库升级的方法及装置
CN104572644B (zh) * 2013-10-10 2018-05-22 北京大学 数据库更新装置和数据库更新方法
CN104714957B (zh) * 2013-12-13 2018-11-23 阿里巴巴集团控股有限公司 一种表结构的变更方法及装置
CN104216948B (zh) * 2014-08-12 2017-12-05 上海新炬网络技术有限公司 一种数据模型的差异控制方法
CN104750774A (zh) * 2014-12-15 2015-07-01 北京星网锐捷网络技术有限公司 数据库升级方法及装置
CN105989089A (zh) * 2015-02-12 2016-10-05 阿里巴巴集团控股有限公司 一种数据对比方法及装置
CN106156052A (zh) * 2015-03-27 2016-11-23 中兴通讯股份有限公司 终端数据升级方法及装置
CN104881455B (zh) * 2015-05-20 2019-01-29 深圳市酷开网络科技有限公司 一种基于mysql的结构差异处理方法及系统
CN104951550B (zh) * 2015-06-25 2018-07-17 走遍世界(北京)信息技术有限公司 数据存储方法及装置
CN105224361B (zh) * 2015-09-15 2018-05-25 华讯方舟科技有限公司 一种对sqlite3型嵌入式数据库进行升级的方法及系统
US10262054B2 (en) * 2016-01-21 2019-04-16 Microsoft Technology Licensing, Llc Database and service upgrade without downtime
CN106250485A (zh) * 2016-07-29 2016-12-21 北京北信源软件股份有限公司 数据库升级方法、装置及系统
CN106339500A (zh) * 2016-09-09 2017-01-18 浪潮软件股份有限公司 一种异地数据库对比工具及方法
CN108023920B (zh) * 2016-10-28 2021-11-26 阿里巴巴集团控股有限公司 一种数据包传输方法、设备及应用接口
CN106777025B (zh) * 2016-12-08 2020-10-27 北京国电通网络技术有限公司 一种数据库物理模型的分析方法及系统
CN108614868B (zh) * 2018-04-16 2021-09-17 北京酷我科技有限公司 一种数据库自动升级方法
CN109388676B (zh) * 2018-08-21 2023-11-14 中国平安人寿保险股份有限公司 数据同步生成方法、装置、计算机设备以及存储介质
CN109814895A (zh) * 2018-11-29 2019-05-28 广州因特信息科技有限公司 一种自动化的数据库更新方法及系统
CN109902078B (zh) * 2019-01-10 2021-01-26 杭州迪普科技股份有限公司 数据库升级兼容的方法、装置、设备及存储介质
CN112817931B (zh) * 2019-11-18 2024-03-29 大唐移动通信设备有限公司 一种增量版本文件的生成方法及装置
CN112181946A (zh) * 2020-09-28 2021-01-05 云知声智能科技股份有限公司 一种动态数据库脚本自动维护的方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335436A (zh) * 2014-08-11 2016-02-17 方正国际软件(北京)有限公司 一种升级数据库结构的方法和设备

Also Published As

Publication number Publication date
CN101183361A (zh) 2008-05-21

Similar Documents

Publication Publication Date Title
CN100570604C (zh) 一种关系数据库应用自动升级的方法
US20210004383A1 (en) System and method for enabling extract transform and load processes in a business intelligence server
US11334594B2 (en) Data model transformation
US10606573B2 (en) System and method for computer language migration using a re-architecture tool for decomposing a legacy system and recomposing a modernized system
US8131686B2 (en) Data migration factory
US7310653B2 (en) Method, system, and product for maintaining software objects during database upgrade
US8112742B2 (en) Method and system for debugging data integration applications with reusable synthetic data values
US7970732B2 (en) Data migration
CN109829012B (zh) 数据同步的方法和装置
US20120054147A1 (en) System and method for extract, transform, and load workflow generation
US9384198B2 (en) Agency management system and content management system integration
WO2012051389A1 (en) Method and system for developing data integration applications with reusable semantic types to represent and process application data
CN102081398A (zh) 修正过程控制数据的方法及装置
US10049142B1 (en) Multi-step code generation for bi processes
CN102402559A (zh) 一种数据库升级脚本的生成方法和装置
US6915313B2 (en) Deploying predefined data warehouse process models
US20090037484A1 (en) Programming system for occasionally-connected mobile business applications
WO2019036310A1 (en) METHOD AND APPARATUS FOR CONVERTING AND DISPLAYING DATA
US20210182115A1 (en) Dependency handling for configuration transport
US8630981B1 (en) Techniques for differencing binary installation packages
CN115495465A (zh) 一种数据更新方法、装置及电子设备
WO2003058399A2 (en) Method and system for adaptive software system interface and external database synchronization
US20180032548A1 (en) Data Structure, Model for Populating a Data Structure and Method of Programming a Processing Device Utilising a Data Structure
CN102611580A (zh) 一种基于规格驱动的多版本网络管理方法
CN111984648B (zh) 一种微服务架构下数据初始化方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091216

Termination date: 20151113

CF01 Termination of patent right due to non-payment of annual fee