【技术实现步骤摘要】
结构化查询语言的处理方法、装置、电子设备及存储介质
[0001]本申请涉及计算机领域,尤其涉及一种结构化查询语言的处理方法
、
装置
、
电子设备及存储介质
。
技术介绍
[0002]结构化查询语言
(Structured Query Language
,
SQL)
,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询
、
更新和管理关系数据库系统
。
[0003]现有的
SQL
语句在执行的过程中,是由客户端发送
SQL
语句至服务端,服务端将
SQL
语句发送至对应的执行引擎进行执行,最后反馈处理结果至客户端
。
其中,执行引擎在执行
SQL
语句的过程中,可以先检测
SQL
语句是否符合词法
、
语法或者语意的要求,若不符合要求则会报错
。
通常情况下执行引擎的计算资源较为紧张,若由执行引擎接收到
SQL
语句,在执行的过程中发现
SQL
语句的错误,再进行报错不仅耗时较长还浪费了执行引擎的较多计算资源,导致
SQL
语句响应效率低下的问题
。
技术实现思路
[0004]为了解决上述技术问题,本申请提供了一种结构化查询语言的处理方法
、
装置
、
电子设 ...
【技术保护点】
【技术特征摘要】
1.
一种结构化查询语言的处理方法,其特征在于,所述方法包括:获取待执行语句,所述待执行语句表示由结构化查询语言组成的语句;生成所述待执行语句的抽象语法树;判断所述抽象语法树中的各个节点信息是否符合预设规则;在所述抽象语法树中的各个所述节点信息均符合所述预设规则的情况下,将所述待执行语句输出至目标执行引擎
。2.
根据权利要求1所述的方法,其特征在于,所述生成所述待执行语句的抽象语法树,包括:确定所述待执行语句的类型标识,所述类型标识表示执行所述待执行语句的目标执行引擎的标识;基于所述类型标识,确定所述目标执行引擎对应的目标解析器,所述目标解析器表示用于解析所述待执行语句的解析器;基于所述目标解析器,判断所述待执行语句是否符合所述目标执行引擎的语法规则;在所述待执行语句不符合所述目标执行引擎的语法规则的情况下,生成第一错误信息,所述第一错误信息表示所述待执行语句存在的错误;在所述待执行语句符合所述目标执行引擎的语法规则的情况下,生成所述待执行语句的抽象语法树
。3.
根据权利要求2所述的方法,其特征在于,所述基于所述类型标识,确定所述目标执行引擎对应的目标解析器,包括:获取解析器集合,所述解析器集合表示预先配置的解析器的集合;确定所述类型标识对应的所述目标执行引擎;判断所述解析器集合中是否存在与所述目标执行引擎对应的解析器;在所述解析器集合中存在所述目标执行引擎对应的解析器的情况下,将所述目标执行引擎对应的解析器,确定为所述目标解析器;在所述解析器集合中不存在所述目标执行引擎对应的解析器的情况下,生成第二错误信息,所述第二错误信息表示所述类型标识存在的错误
。4.
根据权利要求1所述的方法,其特征在于,所述节点信息包括目标表信息;以及,所述判断所述抽象语法树中的各个节点信息是否符合预设规则,包括:获取元数据信息,所述元数据信息表示数据库中的表信息;判断所述元数据信息表示的表信息中是否存在所述目标表信息;在所述元数据信息表示的表信息中存在所述目标表信息的情况下,确定所述抽象语法树中的节点信息符合预设规则;在所述元数据信息表示的表信息中不存在所述目标表信息的情况下,确定所述抽象语法树中的节点信息不符合预设规则
。5.
根据权利要求4所述的方法,其特征在于,所述节点信息还包括目标分区信息;...
【专利技术属性】
技术研发人员:刘泽鑫,
申请(专利权)人:北京奇艺世纪科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。