[发明专利]一种MQL语言翻译为SQL语言的方法在审
申请号: | 201711303906.0 | 申请日: | 2017-12-11 |
公开(公告)号: | CN107832055A | 公开(公告)日: | 2018-03-23 |
发明(设计)人: | 张志胜;王湘平;李璟峰 | 申请(专利权)人: | 安徽科大国创云网科技有限公司 |
主分类号: | G06F8/40 | 分类号: | G06F8/40 |
代理公司: | 北京双收知识产权代理有限公司11241 | 代理人: | 楼湖斌 |
地址: | 230088 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 mql 语言 翻译 sql 方法 | ||
技术领域:
本发明涉及计算机技术领域,具体讲是一种MQL语言翻译为SQL语言的方法。
背景技术:
MQL的英文全名为Meta Query Language,意即元数据查询语言,SQL的英文全名为
Structured Query Language,意即结构化查询语言。在实际生产的应用中,为了屏蔽业务数据库表的变动带来的程序变动,大多数的数据库都通过元数据来访问库表。程序通过访问元数据来获取需要查询的字段,组装SQL去数据库进行查询。
开发人员在开发代码的时候需要对元数据和数据库表都非常熟悉,需要大量的时间熟悉元数据模型。代码中需要首先查询元数据,再查询业务数据,这对于开发和后期的维护人员来说,不够直观,增加了开发和维护的成本,也容易出现错误。
发明内容:
本发明要解决的技术问题是,提供一种比原有的访问方式更加直观,对开发人员的要求更低,也使得开发和后期的维护更加方便的MQL语言翻译为SQL语言的方法。
本发明的技术解决方案是,提供一种MQL语言翻译为SQL语言的方法,该方法包括以下步骤:
步骤1:对MQL语句进行分析,获得关键词以及查询的规格、规格属性。
步骤2:利用缓存中元数据的信息,将规格、规格属性翻译为表和字段;
步骤3:通过步骤1的关键词和步骤2的表、字段拼装SQL语句。
本发明的有益效果是:本发明将本应该在代码中查询元数据的部分进行了封装,使得使用者只需要关注自己需要使用到的规格和规格属性,而不再需要关注具体的表的存放的方式,也无需关注元数据是如何对自己使用的规格、规格属性进行定义的,因此比原有的访问方式更加直观,对开发人员的要求更低,也使得开发和后期的维护更加的方便。
由于MQL的语法与SQL的语法大多数均相同,开发人员对MQL的使用也很得心应手。另外,由于MQL使用了缓存,对于反复出现的语句将会有很好的效率提升。
MQL语句不涉及到任何库表结构的信息,因此安全性完全和元数据的管理等价,减少了人工的信息泄露的可能性,提高了系统整体的安全性。
附图说明:
图1为本发明一种MQL语言翻译为SQL语言的方法的流程图。
具体实施例:
下面结合附图和具体实施例对本发明一种MQL语言翻译为SQL语言的方法作进一步说明。
MQL支持的范围:select,update,insert,delete语句。支持多规格关联查询,支持jion,union,in,exist,distinct,between等SQL常用的语法,支持使用绑定变量的语句,即代码中常见的?。where条件中支持使用任意规格属性的表达式作为条件,如果update和delete语句的where条件中不是只使用主键作为条件,则会先通过条件将ID查询并存放在临时表中,再通过ID执行更新、删除等操作,完成后清空临时表,此时会使用begin,end的SQL语法。
此外,MQL使用缓存,将之前翻译过的语句存放到缓存中,如果再次出现相同的MQL语句,将会直接从缓存中获取SQL语句而不再进行翻译。
MQL语法规则:MQL的语法与SQL语法基本相同,MQL的关键字只支持使用小写。
如图1所示,本发明一种MQL语言翻译为SQL语言的方法包括以下步骤:
步骤1:对MQL语句进行分析,获得MQL语句中的关键词,如select,insert,from等,以及查询的规格、规格属性,MQL中关键字均为小写。
步骤2:利用缓存中元数据的信息,将规格、规格属性翻译为表和字段。在第一步中获取到了规格和对应的规格属性,此时在元数据中查询规格对应的表以及规格属性对应的表字段。
步骤3:通过步骤1的关键词和步骤2的表、字段拼装SQL语句。
以上所述的实施例仅仅是对本发明的优选实施例进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽科大国创云网科技有限公司,未经安徽科大国创云网科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711303906.0/2.html,转载请声明来源钻瓜专利网。