[发明专利]一种数据库版本管理方法、系统及设备在审
申请号: | 202111130125.2 | 申请日: | 2021-09-26 |
公开(公告)号: | CN113778997A | 公开(公告)日: | 2021-12-10 |
发明(设计)人: | 俞天明;范渊;刘博 | 申请(专利权)人: | 杭州安恒信息技术股份有限公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/23 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 高勇 |
地址: | 310000 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 版本 管理 方法 系统 设备 | ||
1.一种数据库版本管理方法,其特征在于,包括:
S1:确定待更新数据库的多个待更新DDL文件中的一个作为当前待更新DDL文件;
S2:根据预设的数据库的DDL语法与数据库的对应关系和所述待更新数据库对所述当前待更新DDL文件进行解析,得到DDL语句;
S3:在所述待更新数据库中执行所述DDL语句;
S4:判断所述DDL语句是否执行成功,若是,进入S5,若否,进入S7;
S5:判断多个所述待更新DDL文件是否全部解析完毕,若否,进入S6,否则,进入S8;
S6:从多个所述待更新DDL文件中未执行的所述待更新DDL文件中确定下一个DDL文件作为所述当前待更新DDL文件,返回S2;
S7:记录所述当前待更新DDL文件的版本号及DDL语句执行失败的操作记录,返回S5;
S8:结束更新。
2.如权利要求1所述数据库版本管理方法,其特征在于,记录所述当前待更新DDL文件的版本号及DDL语句执行失败的操作记录,包括:
记录所述当前待更新DDL文件的版本号及DDL语句执行失败的操作记录到所述待更新数据库中的版本管理模块中。
3.如权利要求2所述数据库版本管理方法,其特征在于,S4与S5之间还包括:
若判定所述DDL语句执行成功,则将所述当前待更新DDL文件的版本号记录到所述版本管理模块中作为历史版本号。
4.如权利要求3所述数据库版本管理方法,其特征在于,在S1之前,还包括:
获取预设目录下的所述待更新数据库的所有DDL文件的版本号;所有所述DDL文件包括已更新DDL文件和/或待更新DDL文件;
获取所述待更新数据库的所有所述历史版本号;
判断是否存在版本号与所有所述历史版本号均不同的DDL文件;
若是,则将版本号与所有所述历史版本号均不同的DDL文件作为所述待更新DDL文件。
5.如权利要求4所述数据库版本管理方法,其特征在于,在S4与S5之间还包括:
若判定所述DDL语句执行成功,则将所述当前待更新DDL文件的MD5值记录到所述版本管理模块中;
判断是否存在版本号与所有所述历史版本号均不同的DDL文件之后,还包括:
若存在版本号与所述历史版本号相同的DDL文件,则判断版本号与所述历史版本号相同的DDL文件的MD5值和所述版本管理模块中储存的版本号与所述历史版本号相同的DDL文件的MD5值是否相同;
若不同,则判定版本号与所述历史版本号相同的DDL文件已被修改并将被修改的DDL文件的版本号记录至版本冲突模块中。
6.如权利要求2所述数据库版本管理方法,其特征在于,在S1之前,还包括:
判断所述待更新数据库中是否存在所述版本管理模块;
若是,则进入S1;
若否,则创建所述版本管理模块。
7.如权利要求1至6任一项所述的数据库版本管理方法,其特征在于,在S2之后,还包括:
根据预设的待更新数据库的DDL语法判断所述DDL语句的DDL语法是否正确,若是,则进入S3,若否,则进入S9;
S9:记录所述当前待更新DDL文件的版本号及DDL语句的DDL语法错误的操作记录,返回S5。
8.如权利要求7所述数据库版本管理方法,其特征在于,记录所述当前待更新DDL文件的版本号及DDL语句执行失败的操作记录之后,还包括:
根据预设配置判断是否跳过所述当前待更新DDL文件,若是,则返回S5,若否,则进入S8;
和/或,
记录所述当前待更新DDL文件的版本号及DDL语句语法错误的操作记录之后,还包括:
根据所述预设配置判断是否跳过所述当前待更新DDL文件,若是,则返回S5,若否,则进入S8。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州安恒信息技术股份有限公司,未经杭州安恒信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111130125.2/1.html,转载请声明来源钻瓜专利网。