[发明专利]基于数据库索引感知的数据库软件开发方法在审
申请号: | 202111496772.5 | 申请日: | 2021-12-08 |
公开(公告)号: | CN114201152A | 公开(公告)日: | 2022-03-18 |
发明(设计)人: | 王东阳;杨磊 | 申请(专利权)人: | 北京滴普科技有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F16/22;G06F16/28 |
代理公司: | 北京中政联科专利代理事务所(普通合伙) 11489 | 代理人: | 赖学能 |
地址: | 100000 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 数据库 索引 感知 软件 开发 方法 | ||
本发明公开了软件开发技术领域的基于数据库索引感知的数据库软件开发方法,通过从数据库采集关键数据,在得到数据模型参数和业务行为参数完成后,分别保存数据模型参数和业务行为参数然后存储起来,然后基于开发部门使用的编程语言分别生成对应的软件数据结构和软件方法或函数;本发明可自动从数据库中提取业务相关的关键数据信息用于建模,开发者不需要再去分析数据库;如果数据库升级后,本发明可以自动感知数据库的变化,重新生成新的业务开发代码,实现代码的自动升级。
技术领域
本发明涉及软件开发技术领域,具体为基于数据库索引感知的数据库软件开发方法。
背景技术
关系型数据库如MySQL,PostgreSQL等是当前流行的关系型数据库,这些数据库提供了统一的SQL语法来进行数据库的操作,不同的开发部门直接只要遵循SQL标准进行数据库操作,就可以达到业务数据的共享。但是由于企业内部的多元化因素,不同的部门使用的开发语言不一样,那么即使是针对同一套数据库,如果使用了新的开发语言,就需要基于新的开发语言重新开发这个功能。另外如果数据库的内部有所变更,对应的各个部门的开发模块都需要重新进行变更开发,浪费大量开发效率。而且数据库开发人员还需要提前熟悉数据库中的信息才能进行开发或升级。
基于此,本发明设计了基于数据库索引感知的数据库软件开发方法,以解决上述问题。
发明内容
本发明的目的在于提供基于数据库索引感知的数据库软件开发方法,以解决上述背景技术中提出的使用了新的开发语言,就需要基于新的开发语言重新开发这个功能,另外如果数据库的内部有所变更,对应的各个部门的开发模块都需要重新进行变更开发,浪费大量开发效率的问题。
为实现上述目的,本发明提供如下技术方案:基于数据库索引感知的数据库软件开发方法,包括以下步骤:
SA1:通过已有的数据库连接驱动连接到业务数据库中,从业务数据库的元信息表中获取业务数据库列表,获取业务数据库列表中的列描述信息和索引描述信息;
SA2:根据业务数据库列表中的列描述信息生成对应的数据模型输入参数;
SA3:根据业务数据库列表中的索引描述信息提取相关的核心业务行为参数;
SC1:根据SA2中的数据模型输入参数和开发部门使用的编程语言的类型渲染模板构建对应的软件数据结构类型;
SC2:根据SA3中的核心业务行为参数和开发部门使用的编程语言的函数渲染模板构建对应的编程语言的软件方法或函数;
SC3:组合SC1生成编程语言数据结构和SC2生成的编程语言或方法生成最终可以直接供软件开发者使用的数据库业务软件代码。
优选的,所述SA1-SA3适用于MySQL,PostgreSQL以及基于MySQL,PostgreSQL衍生出来的其它关系型数据库。
优选的,SA1中,所述列描述信息包括业务数据库列表中包含哪些列、列名以及列的类型等,将列名,列的类型放入到二位数组中保存起来,每一行代表每一列,将二维数组作为数据模型的参数;SA1中,所述索引描述信息包含主键索引以及索引对应的列,唯一索引以及索引包含的列,普通索引以及索引包含的列,然后基于索引是否是唯一索引、是否是组合索引、索引包含的列生成业务行为参数。
优选的,SA3中,所述提取核心业务行为参数具体为基于唯一索引、组合索引以及索引中包含的列名可以生成多条如下结构的数据:【列、行为】,其中第一项”列”可以是单个列名或多个列名,”行为”指对于列名进行”INSERT”、”DELETE”、”UPDATE”、”SELECT”这四种行为,将这些数据同样以二维数组的形式保存起来,作为核心业务行为参数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京滴普科技有限公司,未经北京滴普科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111496772.5/2.html,转载请声明来源钻瓜专利网。