[发明专利]数据库脚本部署装置和数据库脚本部署方法有效
申请号: | 201610044397.3 | 申请日: | 2016-01-21 |
公开(公告)号: | CN106991104B | 公开(公告)日: | 2020-03-17 |
发明(设计)人: | 杨波 | 申请(专利权)人: | 泰康保险集团股份有限公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F8/60 |
代理公司: | 隆天知识产权代理有限公司 72003 | 代理人: | 李昕巍;章侃铱 |
地址: | 100031 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 脚本 部署 装置 方法 | ||
本公开提供了一种数据库脚本部署装置和一种数据库脚本部署方法,其中,数据库脚本部署装置包括:读取单元,用于读取预存的多个数据库脚本的信息;部署脚本生成单元,连接至读取单元,用于根据预置的数据库脚本类别与脚本类别登记表的对应关系,将读取的多个数据库脚本信息分别记录在对应的脚本类别登记表中,以及按照预定义顺序将经过记录的脚本类别登记表的信息写入同一脚本中,以生成部署脚本;执行单元,连接至部署脚本生成单元,用于对数据库执行部署脚本,以完成多个数据库脚本的批量部署。本公开可以实现数据库脚本的批量部署,并且在部署时能够完成动作顺序的控制。
技术领域
本公开涉及计算机技术领域,具体涉及一种数据库脚本部署装置和数据库脚本部署方法。
背景技术
数据库脚本的源代码管理与其他语言无异,主要问题在于脚本的部署。通常,部署数据库脚本有以下3种方式:
1.通过PLSQL工具执行,但不支持批量脚本的执行;
2.通过Oracle的客户端SqlPlus执行,但同样不支持批量脚本的执行;
3.手工编辑“部署脚本”文本,而后在PLSQL工具或SqlPlus客户端执行该“部署脚本”。
在系统功能简单的情况下可以采用第1种和第2种数据库部署方式,但随着系统功能特性复杂度的增加,需要部署的脚本文件逐渐增多,开始过渡到第3种数据库部署方式,然而,如果开发之初即开始编辑该“部署脚本”,开发过程中被部署脚本有更名、废弃等变化,则均需对该“部署脚本”进行更新;如果开发完毕后再开始编辑该“部署脚本”,需要被部署脚本非常多,则有的脚本可以能会被遗漏。
发明内容
本公开的目的在于提供一种数据库脚本部署装置和数据库脚本部署方法,用于至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或多个问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,公开了一种数据库脚本部署装置,包括:读取单元,用于读取预存的多个数据库脚本的信息;部署脚本生成单元,连接至所述读取单元,用于根据预置的数据库脚本类别与脚本类别登记表的对应关系,将读取的多个数据库脚本信息分别记录在对应的脚本类别登记表中,以及按照预定义顺序将经过记录的脚本类别登记表的信息写入同一脚本中,以生成部署脚本;执行单元,连接至所述部署脚本生成单元,用于对数据库执行所述部署脚本,以完成所述多个数据库脚本的批量部署。
在本公开的一种示例实施方式中,所述执行单元采用预设的第一批处理命令执行所述部署脚本,或采用数据库客户端执行所述部署脚本。
在本公开的一种示例实施方式中,所述部署脚本生成单元还用于采用数据库语法分析算法对所述多个数据库脚本进行语义分析,获取所述多个数据库脚本之间的动作顺序信息,并根据所述动作顺序信息生成第二批处理命令,以供所述执行单元运行。
在本公开的一种示例实施方式中,所述部署脚本生成单元采用在操作系统下自动执行的批处理脚本完成所述部署脚本的生成过程。
在本公开的一种示例实施方式中,所述执行单元还用于在所述部署脚本的语句类型是数据库定义语句或控制语句时,将所述部署脚本和回滚脚本同时提交给所述数据库,若部署结果出现错误,则执行所述回滚脚本,以及在所述部署脚本的语句类型是数据操作语句时,若部署结果出现错误,则执行回滚命令。
根据本公开的第二方面,公开了一种数据库脚本部署方法,包括:读取预存的多个数据库脚本的信息;根据预置的数据库脚本类别与脚本类别登记表的对应关系,将读取的多个数据库脚本信息分别记录在对应的脚本类别登记表中,以及将经过记录的脚本类别登记表的信息写入同一脚本中,以生成部署脚本;对数据库执行所述部署脚本,以完成所述多个数据库脚本的批量部署。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于泰康保险集团股份有限公司,未经泰康保险集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610044397.3/2.html,转载请声明来源钻瓜专利网。