-
公开(公告)号:CN113032366A
公开(公告)日:2021-06-25
申请号:CN202110312632.1
申请日:2021-03-24
Applicant: 东北大学
IPC: G06F16/21 , G06F16/22 , G06F16/242 , G06F40/211 , G06F40/253
Abstract: 本发明提供一种基于Flex和Bison的SQL语法树解析方法,首先获取数据库历史查询文件,收集指定数据库实例对应的SQL语句,然后对每条SQL语句进行词法分析,根据构词规则将SQL语句分割为相应的记号序列,其次将词法分析处理得到的记号序列进行语法分析,根据SQL语法规则将记号序列转化为语法树形式,最后将语法树结构转化为JSON格式进行持久化的保存,本发明可以更加准确的构建出候选索引集,而且通过语法树结构还可以了解SQL语句的执行计划,对于任意的SQL语句,即使是复杂的多表查询或者嵌套查询等语句,也可以通过BNF文法转化成SQL语法树,并且由JSON格式进行保存。