CN107832055A - 一种mql语言翻译为sql语言的方法 - Google Patents
一种mql语言翻译为sql语言的方法 Download PDFInfo
- Publication number
- CN107832055A CN107832055A CN201711303906.0A CN201711303906A CN107832055A CN 107832055 A CN107832055 A CN 107832055A CN 201711303906 A CN201711303906 A CN 201711303906A CN 107832055 A CN107832055 A CN 107832055A
- Authority
- CN
- China
- Prior art keywords
- mql
- language
- sql
- translations
- metadata
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种MQL语言翻译为SQL语言的方法,该方法首先是对MQL语句进行分析,获得关键词以及查询的规格、规格属性,然后利用缓存中元数据的信息,将规格、规格属性翻译为表和字段,最后通过第一步骤的关键词和第二步骤的表、字段拼装SQL语句。本发明的优点是:比原有的访问方式更加直观,对开发人员的要求更低,也使得开发和后期的维护更加方便的MQL语言翻译为SQL语言的方法。
Description
技术领域:
本发明涉及计算机技术领域,具体讲是一种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语句。
以上所述的实施例仅仅是对本发明的优选实施例进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
Claims (1)
1.一种MQL语言翻译为SQL语言的方法,其特征在于:该方法包括以下步骤:
步骤1:对MQL语句进行分析,获得关键词以及查询的规格、规格属性;
步骤2:利用缓存中元数据的信息,将规格、规格属性翻译为表和字段;
步骤3:通过步骤1的关键词和步骤2的表、字段拼装SQL语句。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711303906.0A CN107832055A (zh) | 2017-12-11 | 2017-12-11 | 一种mql语言翻译为sql语言的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711303906.0A CN107832055A (zh) | 2017-12-11 | 2017-12-11 | 一种mql语言翻译为sql语言的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107832055A true CN107832055A (zh) | 2018-03-23 |
Family
ID=61642430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711303906.0A Pending CN107832055A (zh) | 2017-12-11 | 2017-12-11 | 一种mql语言翻译为sql语言的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107832055A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110851346A (zh) * | 2019-09-24 | 2020-02-28 | 平安科技(深圳)有限公司 | 查询语句边界问题的检测方法、装置、设备及存储介质 |
WO2021086221A1 (ru) * | 2019-10-31 | 2021-05-06 | федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)" | Способ поддержания консистентности диалога на базе графа знаний и проверки высказываний на противоречия |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070061287A1 (en) * | 2005-09-09 | 2007-03-15 | Jian Le | Method, apparatus and program storage device for optimizing a data warehouse model and operation |
CN102332004A (zh) * | 2011-07-29 | 2012-01-25 | 中国科学院计算技术研究所 | 用于海量数据管理的数据处理方法和*** |
CN103136263A (zh) * | 2011-11-23 | 2013-06-05 | 英业达股份有限公司 | 自动生成sql语句的方法 |
CN103617167A (zh) * | 2013-10-22 | 2014-03-05 | 芜湖大学科技园发展有限公司 | 一种通用的元数据/关系映射框架 |
-
2017
- 2017-12-11 CN CN201711303906.0A patent/CN107832055A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070061287A1 (en) * | 2005-09-09 | 2007-03-15 | Jian Le | Method, apparatus and program storage device for optimizing a data warehouse model and operation |
CN102332004A (zh) * | 2011-07-29 | 2012-01-25 | 中国科学院计算技术研究所 | 用于海量数据管理的数据处理方法和*** |
CN103136263A (zh) * | 2011-11-23 | 2013-06-05 | 英业达股份有限公司 | 自动生成sql语句的方法 |
CN103617167A (zh) * | 2013-10-22 | 2014-03-05 | 芜湖大学科技园发展有限公司 | 一种通用的元数据/关系映射框架 |
Non-Patent Citations (1)
Title |
---|
余正涛等: "受限领域自然语言数据库查询接口研究", 《昆明理工大学学报(理工版)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110851346A (zh) * | 2019-09-24 | 2020-02-28 | 平安科技(深圳)有限公司 | 查询语句边界问题的检测方法、装置、设备及存储介质 |
CN110851346B (zh) * | 2019-09-24 | 2024-05-31 | 平安科技(深圳)有限公司 | 查询语句边界问题的检测方法、装置、设备及存储介质 |
WO2021086221A1 (ru) * | 2019-10-31 | 2021-05-06 | федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)" | Способ поддержания консистентности диалога на базе графа знаний и проверки высказываний на противоречия |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180060410A1 (en) | System and method of applying globally unique identifiers to relate distributed data sources | |
US8140558B2 (en) | Generating structured query language/extensible markup language (SQL/XML) statements | |
US8484210B2 (en) | Representing markup language document data in a searchable format in a database system | |
CN105868204B (zh) | 一种转换Oracle脚本语言SQL的方法及装置 | |
US8903853B2 (en) | Federated search | |
US8380645B2 (en) | Method and system to enable inferencing for natural language queries of configuration management databases | |
US8612468B2 (en) | System and method for retrieving data from a relational database management system | |
Zapilko et al. | TheSoz: A SKOS representation of the thesaurus for the social sciences | |
De Melo | Lexvo. org: Language-related information for the linguistic linked data cloud | |
CN109840256B (zh) | 一种基于业务实体的查询实现方法 | |
US20110131200A1 (en) | Complex path-based query execution | |
KR101122629B1 (ko) | 데이터베이스의 데이터를 변환하여 xml 문서를 생성하는 방법 | |
CN102253984A (zh) | 查询语句处理装置和查询语句处理方法 | |
US6915303B2 (en) | Code generator system for digital libraries | |
CN103425726A (zh) | 使用业务智能工具访问开放数据 | |
CN105302842A (zh) | 一种数据处理方法及装置 | |
US9053207B2 (en) | Adaptive query expression builder for an on-demand data service | |
CN107832055A (zh) | 一种mql语言翻译为sql语言的方法 | |
Noh et al. | WIRE: an automated report generation system using topical and temporal summarization | |
Mark et al. | Information interchange between self-describing databases | |
Chiarcos et al. | Lin| gu| is| tik: building the linguist's pathway to bibliographies, libraries, language resources and linked open data | |
Westphal et al. | Countering language attrition with PanLex and the Web of Data | |
Kogan et al. | Utilizing the multiple facets of WWW contents | |
Pal et al. | XML support in Microsoft SQL Server 2005 | |
CN103530291A (zh) | 适用于搜索引擎的关键词投放拓词方法及其装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180323 |