[发明专利]存储过程转换方法、装置、设备和存储介质有效
| 申请号: | 202010576991.3 | 申请日: | 2020-06-22 |
| 公开(公告)号: | CN114064601B | 公开(公告)日: | 2023-04-07 |
| 发明(设计)人: | 李强周 | 申请(专利权)人: | 金篆信科有限责任公司 |
| 主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/242;G06F40/253 |
| 代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 潘登 |
| 地址: | 100176 北京市大兴区北京经济技术开发区科谷*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 存储 过程 转换 方法 装置 设备 介质 | ||
1.一种存储过程转换方法,其特征在于,包括:
获取源数据库的存储过程;
对所述存储过程进行解析和翻译,得到对应的语法块列表;
对所述语法块列表进行处理,得到满足目标数据库要求的存储过程;
其中,所述对所述存储过程进行解析和翻译,得到对应的语法列表,包括:
基于所述存储过程的语法结构解析所述存储过程,生成解析后的词法树;
对于所述词法树的每个语法块,以不同的数据库语言进行翻译,得到对应的语法块列表;其中,所述语法块列表包括各数据库语言编写的语法块。
2.根据权利要求1所述的方法,其特征在于,所述获取源数据库的存储过程,包括如下方法之一:
在线连接所述源数据库,导出所述源数据库的存储过程;
离线读取所述源数据库的数据库模式定义语言ddl文件,将所述ddl文件拆分成所述源数据库的存储过程。
3.根据权利要求1所述的方法,其特征在于,所述解析所述存储过程,生成解析后的词法树,包括:
解析所述存储过程中的每个词条;
基于解析后的每个词条生成所述存储过程的声明部分和过程体部分;
分别解析所述声明部分和所述过程体部分,生成解析后的词法树。
4.根据权利要求3所述的方法,其特征在于,所述声明部分包括存储过程名称和参数列表,其中,所述参数列表包括如下一个或多个:参数类型,参数名,参数的数据类型。
5.根据权利要求3所述的方法,其特征在于,所述过程体部分包括第二声明部分和语法部分,所述语法部分包括单条语句和语法块。
6.根据权利要求1所述的方法,其特征在于,所述对所述语法块列表进行处理,得到满足目标数据库要求的存储过程,包括:
确定目标数据库的数据库类型;
在所述语法块列表中获取所述数据库类型对应的语法块;
将所述数据库类型对应的语法块进行组合,得到满足目标数据库要求的存储过程。
7.一种存储过程转换装置,其特征在于,包括:
获取模块,被配置为获取源数据库的存储过程;
解析翻译模块,被配置为对所述存储过程进行解析和翻译,得到对应的语法块列表;
处理模块,被配置为对所述语法块列表进行处理,得到满足目标数据库要求的存储过程;
其中,所述解析翻译模块,具体用于:
基于所述存储过程的语法结构解析所述存储过程,生成解析后的词法树;
对于所述词法树的每个语法块,以不同的数据库语言进行翻译,得到对应的语法块列表;
其中,所述语法列表包括各数据库语言编写的语法块。
8.一种设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6任一项所述的方法。
9.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于金篆信科有限责任公司,未经金篆信科有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010576991.3/1.html,转载请声明来源钻瓜专利网。





