一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据查询方法和装置与流程

2022-11-19 16:25:22 来源:中国专利 TAG:

1.本发明涉及计算机技术领域,尤其涉及一种数据查询方法和装置。


背景技术:

2.在实际业务场景中,由于业务需要,对于数据库中相同的业务信息,不同类别的用户可以获取的字段通常不同。例如,数据库中的个人信息表包括id、姓名、年龄和销量四个字段,如果用户为消费者,则可获取的字段为id、姓名和年龄,如果用户为商家,则可获取的字段为id、姓名、年龄和销量。也就是说,不同类别的用户可以从数据库中查询到不同字段的数据。
3.目前,通常基于数据库的字段读写权限来控制用户的查询结果,字段读写权限可以由数据库管理人员通过数据库客户端设置。现有技术在接收到用户的查询请求后,直接查询数据库而获得查询结果,查询结果中包含的字段由预先设置的字段读写权限决定。但是,该方法对数据库具有较强的依赖,当数据库的类型发生变更后,先前设置的字段读写权限往往不适用,数据库管理人员需要重新设置用户的字段读写权限,该过程需要花费较长的时间。


技术实现要素:

4.有鉴于此,本发明实施例提供一种数据查询方法和装置,能够通过预先配置的对应关系控制字段读写权限,避免对数据库的依赖,即使数据库的类型发生变化,也无需更改配置的对应关系。
5.第一方面,本发明实施例提供了一种数据查询方法,包括:接收用户发送的查询请求,所述查询请求中包括:目标功能组件的标识;根据预先配置的功能组件的标识与查询主体的对应关系,确定所述查询请求对应的目标查询主体;所述查询主体包括:表名;确定所述用户所属的目标类别;根据预先配置的类别与查询字段的对应关系,确定所述用户对应的目标查询字段;将所述目标查询主体与所述目标查询字段拼接,得到查询语句;基于所述查询语句查询数据库,得到查询结果;将所述查询结果发送给前端,以使所述前端展示所述查询结果。
6.第二方面,本发明实施例提供了一种数据查询装置,包括:接收模块,配置为接收用户发送的查询请求,所述查询请求中包括:目标功能组件的标识;确定模块,配置为根据预先配置的功能组件的标识与查询主体的对应关系,确定所述查询请求对应的目标查询主体;确定所述用户所属的目标类别;根据预先配置的类别与查询字段的对应关系,确定所述用户对应的目标查询字段;将所述目标查询主体与所述
目标查询字段拼接,得到查询语句;所述查询主体包括:表名;查询模块,配置为基于所述查询语句查询数据库,得到查询结果;发送模块,配置为将所述查询结果发送给前端,以使所述前端展示所述查询结果。
7.第三方面,本发明实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述任一实施例所述的方法。
8.第四方面,本发明实施例提供了一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如上述任一实施例所述的方法。
9.上述发明中的一个实施例具有如下优点或有益效果:通过预先配置的功能组件的标识与查询主体的对应关系、类别与查询字段的对应关系,确定用户可以从数据库中查询的字段,即通过上述两种对应关系控制用户查询的字段。该方法不依赖于数据库,可以通过调整上述两种对应关系,调整用户对数据库的字段读写权限。与现有技术相比,本发明实施例通过配置,在业务层面调整用户的字段读写权限,避免对数据库的依赖,即使数据库的类型发生变化,也无需更改配置的对应关系。
10.上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
11.附图用于更好地理解本发明,不构成对本发明的不当限定。其中:图1是本发明的一个实施例提供的一种数据查询方法的流程图;图2是本发明的另一个实施例提供的一种数据查询方法的流程图;图3是本发明的一个实施例提供的一种数据查询装置的示意图;图4是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
12.以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
13.如图1所示,本发明实施例提供了一种数据查询方法,包括:步骤101:接收用户发送的查询请求,查询请求中包括:目标功能组件的标识。
14.例如,用户通过浏览器点击菜单项,该菜单项的标识即为目标功能组件的标识。
15.步骤102:根据预先配置的功能组件的标识与查询主体的对应关系,确定查询请求对应的目标查询主体;查询主体包括:表名。
16.表名用于标识数据库中的数据表。本发明实施例通过功能组件的标识与查询主体的对应关系,将功能组件与数据表绑定,通过用户操作的功能组件,可以确定需要查询的数
据表。
17.步骤103:确定用户所属的目标类别。
18.在实际业务场景中,不同类别的用户可能拥有不同的查询权限,根据业务需求,可以按照不同的维度对用户进行划分,例如,按照年龄、性别、职业、职位等将用户划分至不同的类别。本发明实施例可以通过查询请求中携带的用户标识,获取用户的注册信息,根据用户的注册信息确定用户所属的目标类别。查询请求中还可以包括用户的属性信息,基于用户的属性信息确定用户所属的目标类别。
19.步骤104:根据预先配置的类别与查询字段的对应关系,确定用户对应的目标查询字段。
20.通过类别与查询字段的对应关系,可以为不同类别的用户配置不同的字段读写权限,如果字段读写权限发生变更,可以通过更改该对应关系实现。
21.步骤105:将目标查询主体与目标查询字段拼接,得到查询语句。
22.步骤106:基于查询语句查询数据库,得到查询结果。
23.步骤107:将查询结果发送给前端,以使前端展示查询结果。
24.通过预先配置的功能组件的标识与查询主体的对应关系、类别与查询字段的对应关系,确定用户可以从数据库中查询的字段,即通过上述两种对应关系控制用户查询的字段。该方法不依赖于数据库,可以通过调整上述两种对应关系,调整用户对数据库的字段读写权限。与现有技术相比,本发明实施例通过配置,在业务层面调整用户的字段读写权限,避免对数据库的依赖,即使数据库的类型发生变化,也无需更改配置的对应关系。
25.现有技术往往为不同类别的用户编写不同的页面,以便于为不同类别的用户展示不同的样式,或者为不同类别的用户配置不同的编辑权限。但是为不同类别的用户分别编写页面,工作量较大,开发效率较低。
26.鉴于此,在本发明的一个实施例中,该方法还包括:根据预先配置的查询字段与元数据的对应关系,确定目标查询字段对应的目标元数据;将目标元数据发送给前端,以使前端根据目标元数据展示查询结果。
27.本发明实施例可以为不同的查询字段分别配置不同的元数据,元数据中可以包括编辑权限,即该字段是否可编辑,还可以包括字段的展示样式信息等。通过查询字段与元数据的对应关系,可以为不同的查询字段设置不同的编辑权限或展示样式,无需为不同类别的用户分别编写页面,降低开发工作量。
28.在实际应用场景中,该方法可以根据用户的类别和触发的功能组件,查询固定的字段。但是,考虑到用户需求之间的差异,在本发明的一个实施例中,查询请求中还包括:当前查询字段;该方法还包括:确定当前查询字段是否与目标查询字段相同,如果相同,则执行将目标查询主体与目标查询字段拼接,否则,当当前查询字段与目标查询字段存在交集字段时,将目标查询主体与交集字段拼接,得到查询语句,并执行基于查询语句查询数据库。
29.在本发明实施例中,用户可以选定要获得的当前查询字段,当前查询字段可以包括一个或多个,如果当前查询字段与目标查询字段完全一致,则可以将目标查询主体与目标查询字段(或当前查询字段)拼接,如果当前查询字段与目标查询字段不完全一致、且存在交集字段时,将目标查询主体与交集字段拼接,如当前查询字段包括a、b、c,目标查询字
段包括b、c、d,交集字段为b、c。如果当前查询字段与目标查询字段不完全一致、且不存在交集字段时,则可以提示用户查询失败或修改当前查询字段。
30.在本发明的一个实施例中,元数据包括:查询字段是否可编辑、查询字段的显示样式、查询字段的显示名称和查询字段的字段类型中任意一种或多种。
31.前端可以根据元数据确定查询字段的展示样式,以及用户对查询字段的编辑权限。
32.在本发明的一个实施例中,查询主体还包括:查询条件。
33.在本发明实施例中,用户可以通过选择不同的功能组件,调整查询主体,如改变查询的数据表或查询条件。通过查询条件,可以对数据表中的数据记录进行筛选,满足用户的不同需求。例如,不同的菜单项对应不同的查询条件,可以根据用户选择的菜单项,确定查询条件。用户可以通过选择或键入的方式确定查询条件,即查询请求中还可以包括查询条件。
34.如图2所示,本发明实施例提供了一种数据查询方法,包括:步骤201:接收用户发送的查询请求,查询请求中包括:目标功能组件的标识。
35.例如,目标功能组件为学生信息编辑。
36.步骤202:根据预先配置的功能组件的标识与查询主体的对应关系,确定查询请求对应的目标查询主体;查询主体包括:表名和查询条件。
37.步骤203:确定用户所属的目标类别。
38.步骤204:根据预先配置的类别与查询字段的对应关系,确定用户对应的目标查询字段。
39.例如,类别1对应的查询字段为name、age、birthday和sex,类别2对应的查询字段为name和age。
40.步骤205:将目标查询主体与目标查询字段拼接,得到查询语句。
41.查询语句结构如下:select {#columns} from student。其中,{#columns} 为查询字段,student 为查询主体。
42.步骤206:基于查询语句查询数据库,得到查询结果。
43.步骤207:根据预先配置的查询字段与元数据的对应关系,确定目标查询字段对应的目标元数据。
44.步骤208:将查询结果和目标元数据发送给前端,以使前端根据目标元数据展示查询结果。
45.本发明实施例不依赖数据库的特性,能够更加便捷地控制字段读写权限,通过元数据可以对字段的编辑权限进行更改,不需要重新编写页面,提高了开发效率。
46.如图3所示,本发明实施例提供了一种数据查询装置,包括:接收模块301,配置为接收用户发送的查询请求,查询请求中包括:目标功能组件的标识;确定模块302,配置为根据预先配置的功能组件的标识与查询主体的对应关系,确定查询请求对应的目标查询主体;确定用户所属的目标类别;根据预先配置的类别与查询字段的对应关系,确定用户对应的目标查询字段;将目标查询主体与目标查询字段拼接,得到查询语句;查询主体包括:表名;
查询模块303,配置为基于查询语句查询数据库,得到查询结果;发送模块304,配置为将查询结果发送给前端,以使前端展示查询结果。
47.在本发明的一个实施例中,确定模块302,配置为根据预先配置的查询字段与元数据的对应关系,确定目标查询字段对应的目标元数据;发送模块304,配置为将目标元数据发送给前端,以使前端根据目标元数据展示查询结果。
48.在本发明的一个实施例中,查询请求中还包括:当前查询字段;确定模块302,配置为确定当前查询字段是否与目标查询字段相同,如果相同,则执行将目标查询主体与目标查询字段拼接,否则,当当前查询字段与目标查询字段存在交集字段时,将目标查询主体与交集字段拼接,得到查询语句,并触发查询模块执行基于查询语句查询数据库。
49.本发明实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述任一实施例的方法。
50.本发明实施例提供了一种计算机可读介质,其上存储有计算机程序,其特征在于,程序被处理器执行时实现如上述任一实施例的方法。
51.下面参考图4,其示出了适于用来实现本发明实施例的终端设备的计算机系统400的结构示意图。图4示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
52.如图4所示,计算机系统400包括中央处理单元(cpu)401,其可以根据存储在只读存储器(rom)402中的程序或者从存储部分408加载到随机访问存储器(ram)403中的程序而执行各种适当的动作和处理。在ram 403中,还存储有系统400操作所需的各种程序和数据。cpu 401、rom 402以及ram 403通过总线404彼此相连。输入/输出(i/o)接口405也连接至总线404。
53.以下部件连接至i/o接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至i/o接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
54.特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。在该计算机程序被中央处理单元(cpu)401执行时,执行本发明的系统中限定的上述功能。
55.需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计
算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
56.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
57.描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括发送模块、获取模块、确定模块和第一处理模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,发送模块还可以被描述为“向所连接的服务端发送图片获取请求的模块”。
58.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献