[发明专利]用于OpenGauss数据库的解析动态SQL的方法及系统在审

专利信息
申请号: 202011468423.8 申请日: 2020-12-14
公开(公告)号: CN112487019A 公开(公告)日: 2021-03-12
发明(设计)人: 宗伟;黄晓涛 申请(专利权)人: 广州海量数据库技术有限公司
主分类号: G06F16/242 分类号: G06F16/242;G06F16/25
代理公司: 北京尚钺知识产权代理事务所(普通合伙) 11723 代理人: 王海荣
地址: 510510 广东省广州市天河区建*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 用于 opengauss 数据库 解析 动态 sql 方法 系统
【说明书】:

发明提供一种用于OpenGauss数据库的解析动态SQL的方法及系统,该用于OpenGauss数据库的解析动态SQL的方法包括:声明一个全局性数据结构用于存储游标的数据,初始化所述全局性数据结构中的变量;将待执行的SQL语句保存到所述全局性数据结构的querybuf字段,根据所述SQL语句构建可执行语句;调用OpenGauss数据库中的软件开发接口执行所述可执行语句。本发明能实现在OpenGauss数据库中解析动态SQL,在执行效率上要优于本地动态SQL语句,并且能够保证动态SQL的灵活度。

技术领域

本发明涉及数据库技术领域,尤其涉及一种用于OpenGauss数据库的解析动态SQL的方法及系统。

背景技术

动态SQL的执行是大部分数据库系统中都支持的特性。基本的形式是在SQL语句中使用占位符取代变量,到实际执行时再将变量赋给占位符,从而执行最终的SQL语句,并返回最后的结果集。一般来讲需要使用动态SQL的部分都是在编写程序时无法确定最终参数的取值,需要在运行时临时指定参数值。与静态SQL相比,动态SQL在执行效率上一般不及静态SQL,但是灵活度上要优于静态SQL。

Oracle中存在一个解析动态SQL的框架DBMS_SQL,该框架弥补了本地动态SQL只能实现固定数量的输入输出变量,且每执行一次都打开和关闭游标一次的缺点,可以实现不定数量的输入和不定数量的输出,一次打开游标可多次使用,在执行效率上要优于本地动态SQL。

目前在OpenGauss数据库中没有解析动态SQL的功能,如何在数据库实现一个兼容DBMS_SQL的动态SQL解析框架,以实现Oracle中DBMS_SQL包中的大部分操作,实现不定数量的输入和不定数量的输出,成为亟待解决的技术问题。

发明内容

有鉴于此,本发明提供一种用于OpenGauss数据库的解析动态SQL的方法及系统,以实现在OpenGauss数据库中解析动态SQL。

一方面,本发明提供一种用于OpenGauss数据库的解析动态SQL的方法,包括:声明一个全局性数据结构用于存储游标的数据,初始化所述全局性数据结构中的变量;

将待执行的SQL语句保存到所述全局性数据结构的querybuf字段,根据所述SQL语句构建可执行语句;

调用OpenGauss数据库中的软件开发接口执行所述可执行语句。

进一步地,所述根据所述SQL语句构建prepare语句的步骤包括:

根据querybuf保存的语句,构建prepare语句;

调用OpenGauss数据库中的软件开发接口对所述prepare语句进行语法分析;

根据语法分析结果判断是否需要绑定变量;

若确定需要绑定变量,则将prepare语句的参数绑定变量,得到可执行语句,并基于所述可执行语句更新所述全局性数据结构的querybuf字段;

若确定不需要绑定变量,则将prepare语句作为可执行语句。

进一步地,在所述根据所述SQL语句构建可执行语句的步骤之后包括:

判断是否需要反馈可执行语句的执行结果;

在确定需要反馈执行结果时,定义用于接收可执行语句的执行结果的结果列;

在所述调用OpenGauss数据库中的软件开发接口执行所述可执行语句的步骤之后包括:

将所述全局性数据结构中tup_list存储的可执行语句的执行结果取出,并将执行结果保存至所述结果列,之后关闭游标。

进一步地,在判断是否需要反馈可执行语句的执行结果的步骤之后包括:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州海量数据库技术有限公司,未经广州海量数据库技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011468423.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top