[发明专利]一种SQL格式化的方法在审

专利信息
申请号: 201811484271.3 申请日: 2018-12-06
公开(公告)号: CN109597624A 公开(公告)日: 2019-04-09
发明(设计)人: 魏明伟 申请(专利权)人: 魏明伟
主分类号: G06F8/41 分类号: G06F8/41;G06F16/242
代理公司: 北京天盾知识产权代理有限公司 11421 代理人: 张彩珍
地址: 300170 天*** 国省代码: 天津;12
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 格式化 语法分析过程 编码效率 词法分析 通用性强 重新定义 注释位置 语法树 自定义 遍历 虚拟 场景 输出 开发
【权利要求书】:

1.一种SQL格式化的方法,其特征在于:该方法包括:

A、词法分析提取注释;

B、自定义语法分析过程;

C、重新定义ANTLR的createToken方法;

D、遍历虚拟语法树,确定注释位置;

E、格式化输出。

2.根据权利要求1所述的一种SQL格式化的方法,其特征在于:所述步骤A中还包括编写ANTLR词法和语法脚本。

3.根据权利要求2所述的一种SQL格式化的方法,其特征在于:所述步骤A中还包括设定行注释的词法分析通道为一个特殊通道,区别于空格和换行,为后续直接在词法分析结果中直接过滤出所有的注释。

4.根据权利要求3所述的一种SQL格式化的方法,其特征在于:所述步骤A中还包括完成词法分析后,将所有的注释Token保存到一个单独队列;当前Token信息包含:所在原始字符串的行号和行内的偏移量。

5.根据权利要求1所述的一种SQL格式化的方法,其特征在于:所述步骤B中还包括对特定语法分析单元添加动作脚本。

6.根据权利要求5所述的一种SQL格式化的方法,其特征在于:所述步骤B中还包括保存文法分析过程的具体Token偏移量。

7.根据权利要求6所述的一种SQL格式化的方法,其特征在于:所述步骤B中还包括分析脚本中的每个文法规则添加一个init和after的方法,将恢复节点放入和弹出堆栈。

8.根据权利要求1所述的一种SQL格式化的方法,其特征在于:所述步骤D中还包括:

对虚拟语法树深度遍历;

在遍历过程中使用allnodelist对所有的节点进行倒序存储,此处的倒序是为了模拟出正常代码顺序的相反顺序;

对于注释队列中的每个注释确定输出位置。

9.根据权利要求1所述的一种SQL格式化的方法,其特征在于:所述步骤E中还包括再次对虚拟语法树深度遍历,遇到某个节点,如果该节点是某个注释的输出节点就输出注释,并且去掉该注释节点,然后按照当前节点类型格式化输出当前节点,及深度遍历其子节点。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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