[发明专利]一种数据库中PG/SQL转换为PL/PGSQL的方法及装置在审
申请号: | 202310455173.1 | 申请日: | 2023-04-25 |
公开(公告)号: | CN116483371A | 公开(公告)日: | 2023-07-25 |
发明(设计)人: | 王帅;王颖泽;苗健;吕新杰 | 申请(专利权)人: | 瀚高基础软件股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/30;G06F16/242 |
代理公司: | 工业和信息化部电子专利中心 11010 | 代理人: | 袁鸿 |
地址: | 250101 山东省济南市高新区舜泰北路*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 pg sql 转换 pl pgsql 方法 装置 | ||
1.一种数据库中PG/SQL转换为PL/PGSQL的方法,其特征在于,包括如下步骤:
预先在数据库配置PL/SQL转换函数和PL/SQL语法解析器,其中所述PL/SQL语法解析器中配置有PL/SQL语法转换函数,且包含PL/SQL的语法规则和PL/PGSQL语法规则;
利用所述PL/SQL转换函数获取转换请求,在确定所述转换请求为PL/SQL语句的情况下,利用所述PL/SQL语法解析器,根据PL/SQL语法规则将所述PL/SQL语句解析为PL/SQL语法树;
利用所述PL/SQL语法转换函数,基于解析的PL/SQL语法树,提取PL/SQL语法树中的元素,并根据PL/PGSQL规则将其拼装为PL/PGSQL语句,以完成转换。
2.如权利要求1所述的数据库中PG/SQL转换为PL/PGSQL的方法,其特征在于,获取转换请求之后,在确定所述转换请求不为PL/SQL语句的情况下,返回原SQL语句。
3.如权利要求1所述的数据库中PG/SQL转换为PL/PGSQL的方法,其特征在于,利用所述PL/SQL语法转换函数,基于解析的PL/SQL语法树,提取PL/SQL语法树中的元素,并根据PL/PGSQL规则将其拼装为PL/PGSQL语句具体包括:
所述PL/SQL语法解析器调用所述PL/SQL语法转换函数;
所述PL/SQL语法转换函数,基于解析的PL/SQL语法树,确定当前数据库中是否包含所有的依赖;以及
将PL/SQL语法树中的元素,根据PL/PGSQL规则将其拼装为PL/PGSQL语句。
4.如权利要求3所述的数据库中PG/SQL转换为PL/PGSQL的方法,其特征在于,利用所述PL/SQL语法转换函数,基于解析的PL/SQL语法树,提取PL/SQL语法树中的元素,并根据PL/PGSQL规则将其拼装为PL/PGSQL语句具体还包括采用如下方式返回结果:
在不缺少依赖的情况下,返回转换的PL/PGSQL语句;
在缺少依赖的情况下,返回转换的PL/PGSQL语句,以及缺少的依赖信息。
5.一种数据库中PG/SQL转换为PL/PGSQL的装置,其特征在于,预先在数据库配置PL/SQL转换函数模块和PL/SQL语法解析器模块,其中所述PL/SQL语法解析器模块中配置有PL/SQL语法转换函数,且包含PL/SQL的语法规则和PL/PGSQL语法规则,包括:
PL/SQL转换函数模块,获取转换请求;
PL/SQL语法解析器模块,在确定所述转换请求为PL/SQL语句的情况下,根据PL/SQL语法规则将所述PL/SQL语句解析为PL/SQL语法树;
所述PL/SQL语法解析器模块调用所述PL/SQL语法转换函数,以基于解析的PL/SQL语法树,提取PL/SQL语法树中的元素,并根据PL/PGSQL规则将其拼装为PL/PGSQL语句,以完成转换。
6.如权利要求5所述的数据库中PG/SQL转换为PL/PGSQL的装置,其特征在于,还包括判断模块,用于确定获取的转换请求是否为PL/SQL语句,在获取的转换请求不为PL/SQL语句的情况下,返回原SQL语句。
7.如权利要求5所述的数据库中PG/SQL转换为PL/PGSQL的装置,其特征在于,
所述PL/SQL语法解析器模块,具体还用于调用所述PL/SQL转换函数;
所述PL/SQL语法转换函数,具体还将用于基于解析的PL/SQL语法树,确定当前数据库中是否包含所有的依赖;以及
将PL/SQL语法树中的元素,根据PL/PGSQL规则将其拼装为PL/PGSQL语句。
8.如权利要求7所述的数据库中PG/SQL转换为PL/PGSQL的装置,其特征在于,所述PL/SQL转换函数采用如下方式返回结果:
在不缺少依赖的情况下,返回转换的PL/PGSQL语句;
在缺少依赖的情况下,返回转换的PL/PGSQL语句,以及缺少的依赖信息。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的数据库中PG/SQL转换为PL/PGSQL的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于瀚高基础软件股份有限公司,未经瀚高基础软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310455173.1/1.html,转载请声明来源钻瓜专利网。