CN114328572A - 基于sql解析器的数据查询方法、装置、系统及介质 - Google Patents
基于sql解析器的数据查询方法、装置、系统及介质 Download PDFInfo
- Publication number
- CN114328572A CN114328572A CN202011045009.6A CN202011045009A CN114328572A CN 114328572 A CN114328572 A CN 114328572A CN 202011045009 A CN202011045009 A CN 202011045009A CN 114328572 A CN114328572 A CN 114328572A
- Authority
- CN
- China
- Prior art keywords
- information
- query
- sql
- data query
- filled
- 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
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012545 processing Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 description 7
- 238000012216 screening Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于SQL解析器的数据查询方法、装置、系统及介质,所述方法包括:当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息;将各所述待填写信息生成为提示信息,并在接收到基于各所述提示信息选择的查询信息后,根据所述查询信息进行数据查询。本发明通过待填写信息所生成的提示信息,供选择填写得到查询信息进行查询,提高了用过查询的SQL语句的编写效率以及准确性,进而促进了查询效率和准确性的提高。
Description
技术领域
本发明涉及大数据技术领域,尤其涉及一种基于SQL解析器的数据查询方法、装置、系统及介质。
背景技术
随着大数据技术的发展,数据库为越来越多的行业、领域所应用,并且所应用的数据库可分类为关系型数据库和非关系型数据库。对于关系型数据库,SQL(StructuredQuery Language,结构化查询语言)是主要的数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
关系型数据库中所涉及到的数据众多,并且不同数据支持以不同方式查询。当具有对其中任何一条数据具有以某一查询条件进行查询的需求时,则依据该查询条件编写SQL语句,由SQL语句实现查询。对于SQL语句的编写一方面需要花费较长的时间,导致查询效率低,另一方面容易出错,导致查询的不准确性。
因此,对于关系型数据库中的数据,因编写SQL语句进行查询,而导致的查询效率低和查询不准确的问题,是当前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种基于SQL解析器的数据查询方法、装置、系统及介质,旨在解决现有技术对于关系型数据库中的数据,因编写SQL语句进行查询,而导致的查询效率低和查询不准确的技术问题。
为实现上述目的,本发明提供一种基于SQL解析器的数据查询方法,所述基于SQL解析器的数据查询方法包括以下步骤:
当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息;
将各所述待填写信息生成为提示信息,并在接收到基于各所述提示信息选择的查询信息后,根据所述查询信息进行数据查询。
可选地,所述基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤包括:
获取与所述输入指令对应的输入信息,并将所述输入信息生成为待解析文件;
基于SQL解析器对所述待解析文件进行解析,确定所述光标位置,以及与所述光标位置对应的待填写信息。
可选地,所述基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤之前包括:
判断是否存在与所述输入指令对应的历史记录,若存在所述历史记录,则基于所述历史记录,确定所述查询信息,并根据所述查询信息进行数据查询;
若不存在所述历史记录,则执行基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤。
可选地,所述基于所述历史记录,确定所述查询信息的步骤包括:
将所述历史记录输出显示,并在接收到基于显示的所述历史记录发送的选择指令时,获取所述选择指令对应的历史信息;
将所述选择指令对应的历史信息确定为所述查询信息。
可选地,所述将各所述待填写信息生成为提示信息的步骤包括:
根据各所述待填写信息携带的类型标识,对各所述待填写信息进行分组,生成多个信息组;
将多个所述信息组分别添加到预设提示框,生成为多组提示信息。
可选地,所述根据所述查询信息进行数据查询的步骤之前包括:
对所述查询信息对应的查询语句进行校验,并判断校验是否通过,若校验通过,则执行根据所述查询信息进行数据查询的步骤;
若校验未通过,则对所述查询语句进行标准化处理,并在标准化处理完成后,执行根据所述查询信息进行数据查询的步骤。
可选地,所述根据所述查询信息进行数据查询的步骤包括:
当接收到运行指令时,运行所述查询信息对应的查询语句,以进行数据查询,并将所述查询语句的执行进度,以及与所述执行进度对应的查询结果实时显示。
可选地,所述根据所述查询信息进行数据查询的步骤之后包括:
获取数据查询结果,并展示所述数据查询结果。
可选地,所述展示所述数据查询结果的步骤包括:
判断是否接收到自定义设置指令,若接收到所述自定义设置指令,则获取所述自定义设置指令携带的自定义信息,其中所述自定义信息包括时间信息和图形信息;
从所述数据查询结果中筛选出满足所述时间信息的目标数据,并调用与所述图形信息对应的图表模板;
将所述目标数据添加到所述图表模板中,以展示目标数据。
可选地,所述判断是否接收到自定义设置指令的步骤之后包括:
若未接收到自定义设置指令,则调用表格模板,并将所述数据查询结果添加到所述表格模板中,以展示所述数据查询结果。
可选地,所述当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤之前包括:
接收解析规则文件,并将所述解析规则文件生成为SQL解析器。
进一步地,为实现上述目的,本发明还提供一种基于SQL解析器的数据查询装置,所述基于SQL解析器的数据查询装置包括:
解析模块,用于当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息;
查询模块,用于将各所述待填写信息生成为提示信息,并在接收到基于各所述提示信息选择的查询信息后,根据所述查询信息进行数据查询。
可选地,所述解析模块还包括:
获取单元,用于获取与所述输入指令对应的输入信息,并将所述输入信息生成为待解析文件;
解析单元,用于基于SQL解析器对所述待解析文件进行解析,确定所述光标位置,以及与所述光标位置对应的待填写信息。
可选地,所述基于SQL解析器的数据查询装置还包括:
判断模块,用于判断是否存在与所述输入指令对应的历史记录,若存在所述历史记录,则基于所述历史记录,确定所述查询信息,并根据所述查询信息进行数据查询;
执行模块,用于若不存在所述历史记录,则执行基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤。
可选地,所述判断模块还包括:
显示单元,用于将所述历史记录输出显示,并在接收到基于显示的所述历史记录发送的选择指令时,获取所述选择指令对应的历史信息;
确定单元,用于将所述选择指令对应的历史信息确定为所述查询信息。
可选地,所述查询模块还包括:
分组单元,用于根据各所述待填写信息携带的类型标识,对各所述待填写信息进行分组,生成多个信息组;
生成单元,用于将多个所述信息组分别添加到预设提示框,生成为多组提示信息。
可选地,所述查询模块还包括:
校验单元,用于对所述查询信息对应的查询语句进行校验,并判断校验是否通过,若校验通过,则执行根据所述查询信息进行数据查询的步骤;
标准化单元,用于若校验未通过,则对所述查询语句进行标准化处理,并在标准化处理完成后,执行根据所述查询信息进行数据查询的步骤。
可选地,所述查询模块还包括:
运行单元,用于当接收到运行指令时,运行所述查询信息对应的查询语句,以进行数据查询,并将所述查询语句的执行进度,以及与所述执行进度对应的查询结果实时显示。
进一步地,为实现上述目的,本发明还提供一种基于SQL解析器的数据查询系统,所述基于SQL解析器的数据查询系统包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的基于SQL解析器的数据查询程序,所述基于SQL解析器的数据查询程序被所述处理器执行时实现如上述所述的基于SQL解析器的数据查询方法的步骤。
进一步地,为实现上述目的,本发明还提供一种介质,所述介质上存储有基于SQL解析器的数据查询程序,所述基于SQL解析器的数据查询程序被处理器执行时实现如上所述的基于SQL解析器的数据查询方法的步骤。
本发明的基于SQL解析器的数据查询方法、装置、系统和介质,当侦测到输入指令时,先通过SQL解析器对输入指令进行解析,确定其对应的光标位置,以及与光标位置对应的待填写信息;再将各个待填写信息生成为提示信息,并在接收到基于各个提示信息所输入的查询信息后,依据该查询信息进行数据查询。其中,待填写信息为与输入指令所输入信息相关的信息,表征在通过输入指令所输入信息后,可能需要输入的信息。通过待填写信息所生成的提示信息,供选择填写得到查询信息进行查询,避免完全由人工自主编写用于查询SQL语句,提高了用过查询的SQL语句的编写效率以及准确性,进而促进了查询效率和准确性的提高。
附图说明
图1为本发明基于SQL解析器的数据查询系统实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明基于SQL解析器的数据查询方法第一实施例的流程示意图;
图3为本发明基于SQL解析器的数据查询装置较佳实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种基于SQL解析器的数据查询系统,参照图1,图1为本发明基于SQL解析器的数据查询系统实施例方案涉及的硬件运行环境的结构示意图。
如图1所示,该基于SQL解析器的数据查询系统可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储基于SQL解析器的数据查询系统。
本领域技术人员可以理解,图1中示出的基于SQL解析器的数据查询系统的硬件结构并不构成对基于SQL解析器的数据查询系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于SQL解析器的数据查询程序。其中,操作系统是管理和控制基于SQL解析器的数据查询系统的硬件与软件资源的程序,支持网络通信模块、用户接口模块、基于SQL解析器的数据查询程序以及其他程序或软件的运行;网络通信模块用于管理和控制网络接口1004;用户接口模块用于管理和控制用户接口1003。
在图1所示的基于SQL解析器的数据查询系统硬件结构中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;处理器1001可以调用存储器1005中存储的基于SQL解析器的数据查询程序,并执行以下操作:
当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息;
将各所述待填写信息生成为提示信息,并在接收到基于各所述提示信息选择的查询信息后,根据所述查询信息进行数据查询。
进一步地,所述基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤包括:
获取与所述输入指令对应的输入信息,并将所述输入信息生成为待解析文件;
基于SQL解析器对所述待解析文件进行解析,确定所述光标位置,以及与所述光标位置对应的待填写信息。
进一步地,所述基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤之前,处理器1001可以调用存储器1005中存储的基于SQL解析器的数据查询程序,并执行以下操作:
判断是否存在与所述输入指令对应的历史记录,若存在所述历史记录,则基于所述历史记录,确定所述查询信息,并根据所述查询信息进行数据查询;
若不存在所述历史记录,则执行基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤。
进一步地,所述基于所述历史记录,确定所述查询信息的步骤包括:
将所述历史记录输出显示,并在接收到基于显示的所述历史记录发送的选择指令时,获取所述选择指令对应的历史信息;
将所述选择指令对应的历史信息确定为所述查询信息。
进一步地,所述将各所述待填写信息生成为提示信息的步骤包括:
根据各所述待填写信息携带的类型标识,对各所述待填写信息进行分组,生成多个信息组;
将多个所述信息组分别添加到预设提示框,生成为多组提示信息。
进一步地,所述根据所述查询信息进行数据查询的步骤之前,处理器1001可以调用存储器1005中存储的基于SQL解析器的数据查询程序,并执行以下操作:
对所述查询信息对应的查询语句进行校验,并判断校验是否通过,若校验通过,则执行根据所述查询信息进行数据查询的步骤;
若校验未通过,则对所述查询语句进行标准化处理,并在标准化处理完成后,执行根据所述查询信息进行数据查询的步骤。
进一步地,所述根据所述查询信息进行数据查询的步骤包括:
当接收到运行指令时,运行所述查询信息对应的查询语句,以进行数据查询,并将所述查询语句的执行进度,以及与所述执行进度对应的查询结果实时显示。
进一步地,所述根据所述查询信息进行数据查询的步骤之后,处理器1001可以调用存储器1005中存储的基于SQL解析器的数据查询程序,并执行以下操作:
获取数据查询结果,并展示所述数据查询结果。
进一步地,所述展示所述数据查询结果的步骤包括:
判断是否接收到自定义设置指令,若接收到所述自定义设置指令,则获取所述自定义设置指令携带的自定义信息,其中所述自定义信息包括时间信息和图形信息;
从所述数据查询结果中筛选出满足所述时间信息的目标数据,并调用与所述图形信息对应的图表模板;
将所述目标数据添加到所述图表模板中,以展示目标数据。
进一步地,所述判断是否接收到自定义设置指令的步骤之后,处理器1001可以调用存储器1005中存储的基于SQL解析器的数据查询程序,并执行以下操作:
若未接收到自定义设置指令,则调用表格模板,并将所述数据查询结果添加到所述表格模板中,以展示所述数据查询结果。
进一步地,所述当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤之前,处理器1001可以调用存储器1005中存储的基于SQL解析器的数据查询程序,并执行以下操作:
接收解析规则文件,并将所述解析规则文件生成为SQL解析器。
本发明基于SQL解析器的数据查询系统的具体实施方式与下述基于SQL解析器的数据查询方法各实施例基本相同,在此不再赘述。
本发明还提供一种基于SQL解析器的数据查询方法。
参照图2,图2为本发明基于SQL解析器的数据查询方法第一实施例的流程示意图。
本发明实施例提供了基于SQL解析器的数据查询方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。具体地,本实施例基于SQL解析器的数据查询方法包括:
步骤S10,当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息;
本实施例中基于SQL解析器的数据查询方法应用于服务器,服务器部署有SQL编辑器和SQL解析器,SQL编辑器用于编辑SQL语句,SQL解析器用于解析经SQL编辑器所输入的SQL语句。通过SQL解析器的解析,预测后续所需要输入的SQL信息,并将预测结果作为提示信息供选择生成为SQL语句,进而依据生成的SQL语句进行数据查询,实现基于SQL解析器的数据查询。具体地,当服务器侦测到输入指令时,通过SQL编辑器对该输入指令进行解析,得到输入指令所对应的光标位置,以及与光标位置对于的待填写信息。其中,对输入指令的侦测依据SQL编辑器实现,SQL编辑器在接收到SQL语句时,则生成输入指令供服务器侦测;或者服务器一旦侦测到SQL编辑器接收到SQL语句,则判定侦测到输入指令。并且,与光标位置对应的待填写信息,依据光标位置当前所具有的SQL信息确定;先识别输入指令所针对的位置,作为光标位置,进而识别光标位置当前所具有的SQL信息,由当前所具有的SQL信息来推测后续所可能需要填写的信息,作为待填写信息。具体地,基于SQL解析器解析与输入指令对应的光标位置,以及与光标位置对应的待填写信息的步骤包括:
步骤S11,获取与所述输入指令对应的输入信息,并将所述输入信息生成为待解析文件;
步骤S12,基于SQL解析器对所述待解析文件进行解析,确定所述光标位置,以及与所述光标位置对应的待填写信息。
进一步地,通过SQL编辑器对经由输入指令所输入的输入信息进行获取,并将输入信息生成为具有解析需求的待解析文件,其中待解析文件优选以js文件的形式存在。此后,通过SQL解析器对待解析文件进行解析,通过解析确定输入所针对的光标位置,进而解析出该光标位置当前所具有的SQL信息,由所具有的SQL信息预测后续可能需要输入的信息,作为与光标位置对应的待填写信息。考虑到所需要输入的信息类型多种多样,如输入表名,以对具有该表名的数据表进行查找;或者输入字段名,以对数据表中具有该字段名的数据进行查找等。将所有可能需要输入的信息一并作为待填写信息,用于作为输入的参考信息,以快速输入。
可理解地,用于SQL语句进行解析的SQL解析器,在对SQL语句解析之前设定。故而当侦测到输入指令时,基于SQL解析器解析与输入指令对应的光标位置,以及与光标位置对应的待填写信息的步骤之前包括:
步骤a,接收解析规则文件,并将所述解析规则文件生成为SQL解析器。
进一步地,SQL解析器通过一定的解析规则对SQL语句进行解析。因此,为了实现按照规则解析,需按照解析规则生成SQL解析器。具体地,先编写用于对SQL语句解析的解析规则文件,并将编写的解析规则文件上传到服务器。服务器在接收到该类解析规则文件时,将其生成为SQL解析器,该SQL解析器可按照解析规则文件中的规则对SQL语句进行解析。一旦侦测到输入指令,表征接收到SQL语句信息时,即可按照SQL解析器中的解析规则对接收的SQL语句信息进行解析,预测后续需要填写的SQL信息作为待填写信息。
步骤S20,将各所述待填写信息生成为提示信息,并在接收到基于各所述提示信息选择的查询信息后,根据所述查询信息进行数据查询。
更进一步地,将解析得到的各个可能填写的待填写信息添加到提示框中,生成为提示信息,并将提示框弹出,显示提示信息,以提醒该处可能需要填写的SQL信息。考虑到各个待填写信息可能属于同一类型,如均为字段名;也可能不属于同一类型,如分别为字段名和表名的;对于此,本实施例依据各个待填写信息所归属的类型,生成提示信息。具体地,将各待填写信息生成为提示信息的步骤包括:
步骤S21,根据各所述待填写信息携带的类型标识,对各所述待填写信息进行分组,生成多个信息组;
步骤S22,将多个所述信息组分别添加到预设提示框,生成为多组提示信息。
进一步地,各个待填写信息携带有表征各自所归属类型的类型标识,对各个待填写信息所携带的类型标识进行获取,并依据各个类型标识,对各个待填写信息进行分组,形成多个信息组。将类型标识相同,表征同一类型的待填写信息划分到同一信息组;而将类型标识不同,表征不同类型的待填写信息划分到不同信息组。
更进一步地,预先设定有用于生成提示信息的预设提示框,根据信息组的数量,对预设提示框进行复制操作,得到与信息组数量相同数据的多个预设提示框。进而将多个信息组分别添加到各个预设提示框,得到多组提示信息。并且为了快速区分各个提示信息的类型,设置有对添加信息组后的预设提示框进行标题更新的机制。即依据预设提示框所添加的信息组的类型,将预设提示框的标题进行修改更新;如预设提示框中添加的信息组类型为表名,则用表名替换该预设提示框的标题,以表征该预设提示框中的提示信息为各个数据表的表名。
进一步地,将所生成的各组提示信息输出显示,并且,预设提示框设置滑动块和翻页按键,显示的每一组提示信息中包含的各个信息可通过滑动块进行滑动查看,以及通过翻页按键进行翻页查看。
更进一步地,用户通过查看显示的各组提示信息,从其中选择所需要填写的信息。当服务器侦测到用户所选择的信息时,将该所选择的信息作为基于各提示信息输入的查询信息进行接收,并将该接收的查询信息和初始输入的SQL信息,以及后续输入或选择的信息,一并形成完整的查询语句。进而通过完整的查询语句进行查询,得到符合该查询语句所表征筛选条件的查询结果。
需要说明的是,所生成的提示信息至少包括关键字组、表名组、字段名组合代码段组;其中,关键字组用于从多个关键字中选择出目标关键字生成查询信息进行关键字查询;表名组用于从多个数据表名称中选择出目标表名生成查询信息进行表名查询;字段名组用于在填写的表名包含的各个字段名中选择出目标字段名生成查询信息进行字段查询;代码段组用于在多个代码段中选择出目标代码段生成查询信息进行代码段查询。以此,实现生成不同类型的提示信息供选择生成查询信息进行查询,选择的类型更为全面,且避免对各种类型查询信息的编写,提高了编写效率和编写的准确性。
可理解地,通过查询信息所生成的查询语句,包含输入的SQL信息,以及基于提示信息所选择的查询信息,输入的SQL信息和选择的查询信息之间可能存在语法不一致,而导致查询语句存在语法不正确的情形。为此,本实施例在根据查询信息所生成的查询语句进行数据查询前,设置有校验机制。具体地,根据查询信息进行数据查询的步骤之前包括:
步骤b1,对所述查询信息对应的查询语句进行校验,并判断校验是否通过,若校验通过,则执行根据所述查询信息进行数据查询的步骤;
步骤b2,若校验未通过,则对所述查询语句进行标准化处理,并在标准化处理完成后,执行根据所述查询信息进行数据查询的步骤。
进一步地,调用预先设定的语法规则,对通过查询信息所生成的查询语句进行校验,判断查询语句是否符合语法规则。若符合语法规则,则判定校验通过,反之若不符合语法规则,则判定校验未通过。校验通过说明查询语句的语法正确,从而根据查询信息所生成的该查询语句进行数据查询。而对于校验未通过,则说明查询语句的语法存在错误;此时,对查询语句进行标准化处理,使得查询语句的语法符合语法规则。并且,在初始化完成,查询语句的语法符合语法规则后,根据查询信息生成的该类经标准化的查询语句进行数据查询。以此,通过校验确保基于查询信息所生成的用于数据查询的查询语句的准确性,进而确保了数据查询结果的准确性。
更进一步地,所述根据所述查询信息进行数据查询的步骤包括:
步骤c,当接收到运行指令时,运行所述查询信息对应的查询语句,以进行数据查询,并将所述查询语句的执行进度,以及与所述执行进度对应的查询结果实时显示。
进一步地,数据查询基于运行指令触发。服务器一旦接收到运行指令,则对由查询信息所生成的查询语句运行,通过查询语句的运行进行数据查询,从数据库中查询出满足查询语句所表征筛选条件的数据。此外,本实施例对于查询过程设置有实时展示机制,将查询语句的执行进度,以及与执行进度对应的查询结果实时展示。即,将执行到那一条语句或指令,对应该语句或指令的执行结果一并实时展示。以便于对数据查询的过程实时监控,确保查询的准确性。
本发明的基于SQL解析器的数据查询方法,当侦测到输入指令时,先通过SQL解析器对输入指令进行解析,确定其对应的光标位置,以及与光标位置对应的待填写信息;再将各个待填写信息生成为提示信息,并在接收到基于各个提示信息所输入的查询信息后,依据该查询信息进行数据查询。其中,待填写信息为与输入指令所输入信息相关的信息,表征在通过输入指令所输入信息后,可能需要输入的信息。通过待填写信息所生成的提示信息,供选择填写得到查询信息进行查询,避免完全由人工自主编写用于查询SQL语句,提高了用过查询的SQL语句的编写效率以及准确性,进而促进了查询效率和准确性的提高。
进一步地,基于本发明基于SQL解析器的数据查询方法的第一实施例,提出本发明基于SQL解析器的数据查询方法第二实施例。
所述基于SQL解析器的数据查询方法第二实施例与所述基于SQL解析器的数据查询方法第一实施例的区别在于,所述基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤之前包括:
步骤13,判断是否存在与所述输入指令对应的历史记录,若存在所述历史记录,则基于所述历史记录,确定所述查询信息,并根据所述查询信息进行数据查询;
步骤S14,若不存在所述历史记录,则执行基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤。
本实施例依据过往查询的历史,来确定需要填写的查询信息。具体地,在通过SQL解析器解析输入指令前,先通过日志信息判断是否存在与输入指令对应的历史记录。若日志信息中包含与当前输入指令所输入SQL信息对应的历史信息,则说明此前针对过当前所输入的SQL信息进行查询,故判定存在历史记录。进而查找日志信息中包含的与历史信息对应的选择信息,将查找得到的选择信息确定为当前所需求的查询信息,并依据查询信息生成查询语句进行数据查询。
若日志信息中不包含与当前输入指令所输入SQL信息对应的历史信息,则说明此前未针对当前所输入的SQL信息进行查询,故判定不存在历史记录此时,调用SQL解析器对输入指令进行解析,确定输入所针对的位置作为与输入指令对应的光标位置,进而解析光标位置所具有的SQL信息,由该SQL信息来预测后续可能所需要输入的信息作为与光标位置对应的待填写信息,以得到待填写信息供选择填写。
可理解地,对于历史记录,其中的选择信息可能是当前所需要填写的信息,也可能不是当前所需要填写的信息,为了填写的准确性,设置有选择确认机制。具体地,基于历史记录,确定查询信息的步骤包括:
步骤131,将所述历史记录输出显示,并在接收到基于显示的所述历史记录发送的选择指令时,获取所述选择指令对应的历史信息;
步骤132,将所述选择指令对应的历史信息确定为所述查询信息。
进一步地,若经判定存在历史记录,则将历史记录输出显示,显示的内容至少包括与当前所输入SQL信息对应一致的历史输入信息,以及与该历史输入信息对应的选择信息,即过往对输入信息的提示信息进行选择表征所需求填写的信息。通过显示历史记录来提醒当前是否需要继续选择其中的选择信息,作为当前的查询信息。若需要继续选择则基于显示的历史记录发送选择指令,通过选择指令来选择历史记录中的选择信息。获取该选择信息作为与选择指令对应的历史信息,并将该历史信息确定为查询信息,以按照历史的查询方式生成查询语句进行数据查询。
本实施例通过过往查询的历史,来确定需要填写的查询信息,实现依据历史记录快速确定查询信息进行数据查询,避免通过SQL解析器的解析,有利于数据查询效率的提高。
进一步地,基于本发明基于SQL解析器的数据查询方法的第一或第二实施例,提出本发明基于SQL解析器的数据查询方法第三实施例。
所述基于SQL解析器的数据查询方法第三实施例与所述基于SQL解析器的数据查询方法第一或第二实施例的区别在于,所述根据所述查询信息进行数据查询的步骤之后包括:
步骤S30,获取数据查询结果,并展示所述数据查询结果。
本实施例对经查询信息进行数据查询所得到的查询结果进行展示。在数据查询完成之后,对数据查询结果进行获取,并展示该数据查询结果。具体地展示数据查询结果的步骤包括:
步骤S31,判断是否接收到自定义设置指令,若接收到所述自定义设置指令,则获取所述自定义设置指令携带的自定义信息,其中所述自定义信息包括时间信息和图形信息;
步骤S32,从所述数据查询结果中筛选出满足所述时间信息的目标数据,并调用与所述图形信息对应的图表模板;
步骤S33,将所述目标数据添加到所述图表模板中,以展示目标数据。
进一步地,本实施例对数据查询结果的展示可以以自定义图表的方式展示,也可以以默认的方式展示。具体地,在获取数据查询结果进行展示时,判断是否接收到自定义设置指令,该自定义设置指令为用于对展示的图表进行选择设置的指令。若接收到自定义设置指令,则说明具有以自定义图表的方式展示数据查询结果的需求,此时获取自定义设置指令携带的自定义信息。该自定义信息至少包括时间信息和图形信息,时间信息用于表示对数据查询结果中在该时间信息内生成的数据进行展示,图形信息用于展示的图形样式,如柱状图、饼图、折线图等。此外,自定义信息还可以包含图形大小信息,以定义展示的图形大小。
更进一步地,依据时间信息,对数据查询结果筛选,从其中筛选出满足时间信息,即在时间信息所表征时间内生成的目标数据。进而从针对各种图形信息所预先设定的图表模板中,查找出与自定义信息中图形信息对应的图表模板,并将目标数据添加到该对应的图表模板中,形成图表展示。以此,实现将目标数据以选择的图表展示,满足对数据查询结果的自定义展示需求。
进一步地,所述判断是否接收到自定义设置指令的步骤之后包括:
步骤S34,若未接收到自定义设置指令,则调用表格模板,并将所述数据查询结果添加到所述表格模板中,以展示所述数据查询结果。
更进一步地,若经判定为接收到自定义设置指令,则说明不具有以自定义图表的方式展示数据查询结果的需求,此时调用预先设置的表格模板,并将数据查询结果添加到表格模板中,实现以默认的展示方式对数据查询结果进行展示。
本实施通过设置支持自定义图表的展示方式,通过自定义设置指令,选择所需要展示的图表样式,对数据查询结果展示,丰富了数据查询结果的展示形式,满足了不同的展示需求。
本发明还提供一种基于SQL解析器的数据查询装置。请参照图3,所述基于SQL解析器的数据查询装置包括:
解析模块10,用于当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息;
查询模块20,用于将各所述待填写信息生成为提示信息,并在接收到基于各所述提示信息选择的查询信息后,根据所述查询信息进行数据查询。
进一步地,所述解析模块还包括:
获取单元,用于获取与所述输入指令对应的输入信息,并将所述输入信息生成为待解析文件;
解析单元,用于基于SQL解析器对所述待解析文件进行解析,确定所述光标位置,以及与所述光标位置对应的待填写信息。
进一步地,所述基于SQL解析器的数据查询装置还包括:
判断模块,用于判断是否存在与所述输入指令对应的历史记录,若存在所述历史记录,则基于所述历史记录,确定所述查询信息,并根据所述查询信息进行数据查询;
执行模块,用于若不存在所述历史记录,则执行基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤。
进一步地,所述判断模块还包括:
显示单元,用于将所述历史记录输出显示,并在接收到基于显示的所述历史记录发送的选择指令时,获取所述选择指令对应的历史信息;
确定单元,用于将所述选择指令对应的历史信息确定为所述查询信息。
进一步地,所述查询模块还包括:
分组单元,用于根据各所述待填写信息携带的类型标识,对各所述待填写信息进行分组,生成多个信息组;
生成单元,用于将多个所述信息组分别添加到预设提示框,生成为多组提示信息。
进一步地,所述查询模块还包括:
校验单元,用于对所述查询信息对应的查询语句进行校验,并判断校验是否通过,若校验通过,则执行根据所述查询信息进行数据查询的步骤;
标准化单元,用于若校验未通过,则对所述查询语句进行标准化处理,并在标准化处理完成后,执行根据所述查询信息进行数据查询的步骤。
进一步地,所述查询模块还包括:
运行单元,用于当接收到运行指令时,运行所述查询信息对应的查询语句,以进行数据查询,并将所述查询语句的执行进度,以及与所述执行进度对应的查询结果实时显示。
本发明基于SQL解析器的数据查询装置具体实施方式与上述基于SQL解析器的数据查询方法各实施例基本相同,在此不再赘述。
此外,本发明实施例还提出一种介质。
介质上存储有基于SQL解析器的数据查询程序,基于SQL解析器的数据查询程序被处理器执行时实现如上所述的基于SQL解析器的数据查询方法的步骤。
本发明介质可以为计算机可读存储介质,其具体实施方式与上述基于SQL解析器的数据查询方法各实施例基本相同,在此不再赘述。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。
Claims (10)
1.一种基于SQL解析器的数据查询方法,其特征在于,所述基于SQL解析器的数据查询方法包括以下步骤:
当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息;
将各所述待填写信息生成为提示信息,并在接收到基于各所述提示信息选择的查询信息后,根据所述查询信息进行数据查询。
2.如权利要求1所述的基于SQL解析器的数据查询方法,其特征在于,所述基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤包括:
获取与所述输入指令对应的输入信息,并将所述输入信息生成为待解析文件;
基于SQL解析器对所述待解析文件进行解析,确定所述光标位置,以及与所述光标位置对应的待填写信息。
3.如权利要求1所述的基于SQL解析器的数据查询方法,其特征在于,所述基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤之前包括:
判断是否存在与所述输入指令对应的历史记录,若存在所述历史记录,则基于所述历史记录,确定所述查询信息,并根据所述查询信息进行数据查询;
若不存在所述历史记录,则执行基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息的步骤。
4.如权利要求3所述的基于SQL解析器的数据查询方法,其特征在于,所述基于所述历史记录,确定所述查询信息的步骤包括:
将所述历史记录输出显示,并在接收到基于显示的所述历史记录发送的选择指令时,获取所述选择指令对应的历史信息;
将所述选择指令对应的历史信息确定为所述查询信息。
5.如权利要求1所述的基于SQL解析器的数据查询方法,其特征在于,所述将各所述待填写信息生成为提示信息的步骤包括:
根据各所述待填写信息携带的类型标识,对各所述待填写信息进行分组,生成多个信息组;
将多个所述信息组分别添加到预设提示框,生成为多组提示信息。
6.如权利要求1所述的基于SQL解析器的数据查询方法,其特征在于,所述根据所述查询信息进行数据查询的步骤之前包括:
对所述查询信息对应的查询语句进行校验,并判断校验是否通过,若校验通过,则执行根据所述查询信息进行数据查询的步骤;
若校验未通过,则对所述查询语句进行标准化处理,并在标准化处理完成后,执行根据所述查询信息进行数据查询的步骤。
7.如权利要求6所述的基于SQL解析器的数据查询方法,其特征在于,所述根据所述查询信息进行数据查询的步骤包括:
当接收到运行指令时,运行所述查询信息对应的查询语句,以进行数据查询,并将所述查询语句的执行进度,以及与所述执行进度对应的查询结果实时显示。
8.一种基于SQL解析器的数据查询装置,其特征在于,所述基于SQL解析器的数据查询装置包括:
解析模块,用于当侦测到输入指令时,基于SQL解析器解析与所述输入指令对应的光标位置,以及与所述光标位置对应的待填写信息;
查询模块,用于将各所述待填写信息生成为提示信息,并在接收到基于各所述提示信息选择的查询信息后,根据所述查询信息进行数据查询。
9.一种基于SQL解析器的数据查询系统,其特征在于,所述基于SQL解析器的数据查询系统包括包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的基于SQL解析器的数据查询程序,所述基于SQL解析器的数据查询程序被所述处理器执行时实现如权利要求1-7中任一项所述的基于SQL解析器的数据查询方法的步骤。
10.一种介质,其特征在于,所述介质上存储有基于SQL解析器的数据查询程序,所述基于SQL解析器的数据查询程序被处理器执行时实现如权利要求1-7中任一项所述的基于SQL解析器的数据查询方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011045009.6A CN114328572A (zh) | 2020-09-28 | 2020-09-28 | 基于sql解析器的数据查询方法、装置、系统及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011045009.6A CN114328572A (zh) | 2020-09-28 | 2020-09-28 | 基于sql解析器的数据查询方法、装置、系统及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114328572A true CN114328572A (zh) | 2022-04-12 |
Family
ID=81011740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011045009.6A Pending CN114328572A (zh) | 2020-09-28 | 2020-09-28 | 基于sql解析器的数据查询方法、装置、系统及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114328572A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117251473A (zh) * | 2023-11-20 | 2023-12-19 | 摩斯智联科技有限公司 | 车辆数据查询分析方法、系统、装置和存储介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577489A (zh) * | 2012-08-08 | 2014-02-12 | 百度在线网络技术(北京)有限公司 | 一种网页浏览历史查询方法及装置 |
CN103914513A (zh) * | 2014-01-13 | 2014-07-09 | 北京搜狗科技发展有限公司 | 一种实体输入方法和装置 |
CN104239508A (zh) * | 2014-09-12 | 2014-12-24 | 中国工商银行股份有限公司 | 数据查询方法和装置 |
CN105868255A (zh) * | 2015-12-25 | 2016-08-17 | 乐视网信息技术(北京)股份有限公司 | 查询推荐方法及装置 |
CN106815219A (zh) * | 2015-11-27 | 2017-06-09 | 阿里巴巴集团控股有限公司 | 数据库编辑器的编辑方法和装置 |
US20170185673A1 (en) * | 2015-12-25 | 2017-06-29 | Le Holdings (Beijing) Co., Ltd. | Method and Electronic Device for QUERY RECOMMENDATION |
CN107480280A (zh) * | 2017-08-22 | 2017-12-15 | 金蝶软件(中国)有限公司 | 一种数据处理的方法以及相关设备 |
CN108008947A (zh) * | 2017-12-25 | 2018-05-08 | 上海达梦数据库有限公司 | 一种编程语句的智能提示方法、装置、服务器及存储介质 |
WO2018201280A1 (en) * | 2017-05-02 | 2018-11-08 | Alibaba Group Holding Limited | Method and apparatus for query auto-completion |
CN109271403A (zh) * | 2018-09-28 | 2019-01-25 | 北京京东金融科技控股有限公司 | 一种数据查询的操作方法、装置、介质及电子设备 |
US20190236217A1 (en) * | 2018-01-31 | 2019-08-01 | Salesforce.Com, Inc. | Typeahead and autocomplete for natural language queries |
CN110968601A (zh) * | 2019-11-28 | 2020-04-07 | 中国银行股份有限公司 | 一种数据查询处理方法及装置 |
CN111221840A (zh) * | 2018-11-23 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 数据处理方法及装置、数据缓存方法、存储介质、系统 |
WO2020155740A1 (zh) * | 2019-01-28 | 2020-08-06 | 平安科技(深圳)有限公司 | 信息查询方法、装置、计算机设备及存储介质 |
-
2020
- 2020-09-28 CN CN202011045009.6A patent/CN114328572A/zh active Pending
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577489A (zh) * | 2012-08-08 | 2014-02-12 | 百度在线网络技术(北京)有限公司 | 一种网页浏览历史查询方法及装置 |
CN103914513A (zh) * | 2014-01-13 | 2014-07-09 | 北京搜狗科技发展有限公司 | 一种实体输入方法和装置 |
CN104239508A (zh) * | 2014-09-12 | 2014-12-24 | 中国工商银行股份有限公司 | 数据查询方法和装置 |
CN106815219A (zh) * | 2015-11-27 | 2017-06-09 | 阿里巴巴集团控股有限公司 | 数据库编辑器的编辑方法和装置 |
CN105868255A (zh) * | 2015-12-25 | 2016-08-17 | 乐视网信息技术(北京)股份有限公司 | 查询推荐方法及装置 |
US20170185673A1 (en) * | 2015-12-25 | 2017-06-29 | Le Holdings (Beijing) Co., Ltd. | Method and Electronic Device for QUERY RECOMMENDATION |
WO2018201280A1 (en) * | 2017-05-02 | 2018-11-08 | Alibaba Group Holding Limited | Method and apparatus for query auto-completion |
CN107480280A (zh) * | 2017-08-22 | 2017-12-15 | 金蝶软件(中国)有限公司 | 一种数据处理的方法以及相关设备 |
CN108008947A (zh) * | 2017-12-25 | 2018-05-08 | 上海达梦数据库有限公司 | 一种编程语句的智能提示方法、装置、服务器及存储介质 |
US20190236217A1 (en) * | 2018-01-31 | 2019-08-01 | Salesforce.Com, Inc. | Typeahead and autocomplete for natural language queries |
CN109271403A (zh) * | 2018-09-28 | 2019-01-25 | 北京京东金融科技控股有限公司 | 一种数据查询的操作方法、装置、介质及电子设备 |
CN111221840A (zh) * | 2018-11-23 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 数据处理方法及装置、数据缓存方法、存储介质、系统 |
WO2020155740A1 (zh) * | 2019-01-28 | 2020-08-06 | 平安科技(深圳)有限公司 | 信息查询方法、装置、计算机设备及存储介质 |
CN110968601A (zh) * | 2019-11-28 | 2020-04-07 | 中国银行股份有限公司 | 一种数据查询处理方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117251473A (zh) * | 2023-11-20 | 2023-12-19 | 摩斯智联科技有限公司 | 车辆数据查询分析方法、系统、装置和存储介质 |
CN117251473B (zh) * | 2023-11-20 | 2024-03-15 | 摩斯智联科技有限公司 | 车辆数据查询分析方法、系统、装置和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109376166B (zh) | 脚本转换方法、装置、计算机设备及存储介质 | |
CN109359028B (zh) | 代码质量监控方法、装置、计算机设备及存储介质 | |
CN108762743B (zh) | 一种数据表操作代码生成方法及装置 | |
CN110427188B (zh) | 单测断言程序的配置方法、装置、设备及存储介质 | |
EP1777629A1 (en) | Method and apparatus for automatic form filling | |
CN111176996A (zh) | 测试用例生成方法、装置、计算机设备及存储介质 | |
CN111026670B (zh) | 测试用例的生成方法、测试用例的生成装置及存储介质 | |
JP2013077246A (ja) | 動的なウェブ・アプリケーションの問題を修正するメタデータの生成・管理の支援方法、装置、およびプログラム | |
US20070245198A1 (en) | Method and apparatus for interactive generation of device response templates and analysis | |
CN109857756B (zh) | 数据库报表的生成方法、装置、设备及可读存储介质 | |
US9037552B2 (en) | Methods for analyzing a database and devices thereof | |
CN112434033B (zh) | 一种应对灵活多变的表格类数据收集和展示的方法 | |
CN110198327B (zh) | 一种数据传输方法及相关设备 | |
CN107145538B (zh) | 表格数据查询方法、装置与系统 | |
CN111181805A (zh) | 一种基于测试用例的微服务测试挡板生成方法及系统 | |
CN114385763A (zh) | 数据血缘分析方法、装置、系统及可读存储介质 | |
CN114253995B (zh) | 数据溯源方法、装置、设备及计算机可读存储介质 | |
CN111679851A (zh) | 需求代码管理方法、装置、系统与计算机可读存储介质 | |
CN108959454B (zh) | 一种提示子句指定方法、装置、设备及存储介质 | |
CN114328572A (zh) | 基于sql解析器的数据查询方法、装置、系统及介质 | |
CN116303641B (zh) | 一种支持多数据源可视化配置的实验室报告管理方法 | |
CN110737642B (zh) | 数据库信息分析方法、装置、计算机装置及存储介质 | |
KR101423594B1 (ko) | 대화형 질의응답을 이용한 쿼리문 생성 장치, 쿼리문 생성 방법, 및 그 기록매체 | |
CN112784143B (zh) | 基于可视化计算引擎的数据处理方法、系统和计算机设备 | |
CN115470127B (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 |