一种数据库级联关系的自动维护方法及系统技术方案

技术编号:12097727 阅读:133 留言:0更新日期:2015-09-23 15:23
本发明专利技术涉及数据库维护领域,公开了一种数据库级联关系的自动维护方法,该方法包括:创建级联关系表,将所述关系表注入系统数据库中;将级联关系转义SQL的Jar包引入软件系统;调用开放接口执行级联操作;通过级联关系生成工具进行数据库级联关系维护;在软件系统删除或更新时,调用所述开放接口执行所述级联操作。本发明专利技术摒弃了数据库外键的约束,方便建立与解决级联关系,并且能够完成对所述级联关系的自动维护,无须大量编码,省时省力,同时可以进行可视化操作,无须编写sql脚本。

【技术实现步骤摘要】

本专利技术涉及数据库维护领域领域,尤其涉及一种数据库级联关系的自动维护方法及系统
技术介绍
数据库是按照数据结构来组织、存储和管理数据的仓库。数据库通过级联关系来存储各项数据之间的关系。目前,对数据库的维护一般采用建立表外键或软件系统编码实现的方式完成对数据库的维护,其中,建立表外键的方式虽然建立方便,但在表中有数据记录时,在需要解除级联关系时,会受到数据库外键约束的限制,需要对某些数据进行处理或迀移才能够解除,而当级联层级较为复杂时,环环相扣,处理费时费力;软件系统编码方式则需要软件开发人员能够比较系统的了解表与表之间的逻辑关系才能够合理的处理级联关系,而当级联层级较深且复杂时,编码变得相对困难,同时,软件系统需要进行版本升级,这对基于C/S架构且以项目需求为导向的系统来说,代价较大,不易于维护。
技术实现思路
本专利技术所要解决的技术问题是,提供一种数据库级联关系的自动维护方法及系统,以解决级联层级较深且复杂时,数据库难以维护,级联关系处理起来费时费力的问题。本专利技术解决上述技术问题所采用的技术方案是提供一种数据库级联关系的自动维护方法,该方法包括步骤:S1、创建级联关系表,将所述级联关系表创建脚本注入到需要维护的系统数据库中;S2、将包含级联关系转义SQL的Jar包文件引入软件系统;S3、通过级联关系生成工具进行数据库级联关系维护;S4、在更新或删除某项所述级联关系时,软件系统在所述更新或删除的接口内调用开放接口;S5、所述开放接口执行级联操作。 优选地,所述数据库级联关系以数据库表或文件格式存储。优选地,所述Jar包通过数据库存储过程或第三方应用托管实现扩展。另一方面,本专利技术提供一种数据库级联关系的自动维护系统,所述系统包括:系统数据库,用于存储级联关系表;软件系统,用于对所述系统数据库中的所述级联关系进行记录、载入、解析和转义。优选地,所述系统包括创建单元,通过将所述级联关系表创建脚本注入到系统数据库中来创建所述级联关系表。优选地,所述系统包括转义单元,将包含级联关系转义SQL的Jar包文件引入所述软件系统,并根据所述级联关系转义SQL执行转义操作。优选地,所述系统包括级联关系生成工具,用于连接所述系统数据库,并对所述级联关系表进行维护。优选地,所述系统包括一个开放接口,在所述软件系统需要删除或更新所述级联关系记录时,在删除或更新接口内调用所述开放接口。优选地,所述系统数据库支持多种数据库。【附图说明】图1是本专利技术的一个优选实施例中数据库级联关系的自动维护方法流程图;图2是本专利技术的一个优选实施例中数据库级联关系的自动维护系统结构图。【具体实施方式】以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。说明书后续描述为实施本专利技术的较佳实施方式,然所述描述乃以说明本专利技术的一般原则为目的,并非用以限定本专利技术的范围。本专利技术的保护范围当视所附权利要求所界定者为准。下面结合附图和具体实施例对本专利技术做进一步详细说明。如图1所示,为本专利技术的一个优选实施例,公开了一种数据库级联关系的自动维护方法,该方法包括步骤:S1、创建级联关系表,将级联关系表创建脚本注入到需要维护的系统数据库中;S2、将包含级联关系转义SQL的Jar包文件引入软件系统;S3、通过级联关系生成工具进行数据库级联关系维护;S4、在更新或删除某项级联关系时,软件系统在更新或删除的接口内调用开放接P ;S5、开放接口执行级联操作。本实施例中,按照级联关系创建脚本创建级联关系表,并将其存储在系统数据库中,引入级联关系转义SQL,通过级联关系生成工具维护级联关系表,通过软件系统执行转义后的SQL,并对级联关系记录进行载入、解析和转义,本专利技术使得级联关系表的维护脱离数据库外键约束,建立与解除级联关系简单方便,级联层级之间相对独立,不因级联层级的深度和复杂层度而难以维护,同时,实现级联关系表的自动维护,无需大量编码,实现可视化操作。进一步地,数据库级联关系以数据库表或文件格式存储。更进一步地,Jar包通过数据库存储过程或第三方应用托管实现扩展。本实施例中,数据库级联关系可以通过数据库表的形式存储,也可以以文件形式或其他方式进行存储,其中,级联关系的SQL转义部分通过Java编写实现,以Jar包的形式独立抽离,Jar包可以通过数据库存储过程或第三方应用托管实现扩展,多种格式和扩展方式使得本方案能够适应多种环境和系统,使数据库的维护更加省时方便。本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,该程序在执行时,包括上述实施例方法的各步骤,而所述的存储介质可以是:ROM/RAM、磁碟、光盘、存储卡等。因此,本领域相关技术人员应能理解,与本专利技术的方法相对应的,本专利技术还同时包括一种数据库级联关系的自动维护系统,参见图2,与上述方法步骤一一对应地,该系统包括:系统数据库,用于存储级联关系表;软件系统,用于对系统数据库中的级联关系进行记录、载入、解析和转义。本实施例中,系统数据存储级联关系表,软件系统对级联关系进行记录、载入、解析和转义,实现了对级联关系的自动维护,本系统不受数据库外键约束的影响,级联层级之间的关系相对独立并且维护简单。进一步地,系统包括创建单元,通过将级联关系表创建脚本注入到系统数据库中来创建级联关系表。进一步地,系统包括转义单元,将包含级联关系转义SQL的Jar包文件引入软件系统,并根据级联关系转义SQL执行转义操作。本实施例中,通过级联关系表创建脚本创建级联关系表,引入级联关系转移SQL,软件系统据此对级联关系进行载入、解析和转义,无需维护大量SQL脚本或编写程序代码,更好地控制了因数据库级联关系更改而导致频繁发布版本的情况,从而减轻编码的工作量和复杂度,降低版本升级成本。进一步地,系统包括级联关系生成工具,用于连接系统数据库,并对级联关系表进行维护。进一步地,系统包括一个开放接口,在软件系统需要删除或更新级联关系记录时,在删除或更新接口内调用开放接口。本实施例中,系统通过级联关系生成工具维护级联关系表,并通过一个开放接口在删除或更新级联记录时完成临时在某一层级中插入新的层级或删除某一中间层级,层级之间相对独立,使得级联关系的维护变得简单方便,不受数据库外键约束的影响。进一步地,系统数据库支持多种数据库。本实施例中,系统支持多种数据库,可以应用于多种系统,对数据库的维护建立可视化界面,进行自动维护。与现有技术相比,本专利技术提供了一种数据库级联关系的自动维护方法及系统,通过软件系统对系统数据库中的级联关系表进行载入、解析和转义,通过级联关系生成工具对级联关系表进行维护,确保级联层级之间的相对独立,可以在某一层级中插入新的层级或删除某一中间层级,使得级联关系的维护简单方便,不受数据库外键的影响,同时,建立可视化操作平台,实现级联关系表的自动维护,无需大量编码,更好地控制了因数据库级联关系更改而导致频繁发布版本的情况,从而减轻编码的工作量和复杂度,降低版本升级成本。值得注意的是,以上所述仅为本专利技术的较佳实施例,并非因此限定本专利技术的专利保护范围,本专利技术还可以对上述各种零部件的构造进行材料和结构的改进,或者是采用技术等同本文档来自技高网...

【技术保护点】
一种数据库级联关系的自动维护方法,其特征在于,所述方法包括步骤:S1、创建级联关系表,将所述级联关系表创建脚本注入到需要维护的系统数据库中;S2、将包含级联关系转义SQL的Jar包文件引入软件系统;S3、通过级联关系生成工具进行数据库级联关系维护;S4、在更新或删除某项所述级联关系时,软件系统在所述更新或删除的接口内调用开放接口;S5、所述开放接口执行级联操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:潘俊
申请(专利权)人:东方网力科技股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1