[发明专利]动态查询方法、装置、设备及存储介质在审
| 申请号: | 202110214284.4 | 申请日: | 2021-02-25 |
| 公开(公告)号: | CN112948418A | 公开(公告)日: | 2021-06-11 |
| 发明(设计)人: | 姚俊安 | 申请(专利权)人: | 平安普惠企业管理有限公司 |
| 主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/2455 |
| 代理公司: | 深圳市赛恩倍吉知识产权代理有限公司 44334 | 代理人: | 杨毅玲;刘丽华 |
| 地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 动态 查询 方法 装置 设备 存储 介质 | ||
本发明涉及数据处理,提供一种动态查询方法、装置、设备及存储介质。该方法能够根据动态查询请求确定待查询数据库,获取待查询数据库的配置文件,读取配置文件中的每个指令,解析读取到的指令,得到每个指令的变量及变量表达式,根据动态查询请求获取需求列表,从需求列表中提取与变量对应的变量值,若变量值满足变量表达式,根据变量值及变量表达式生成结构化查询语句,利用MyBatis框架在待查询数据库中执行结构化查询语句,得到查询结果。本发明不仅能够解决MyBatis框架无法直接执行带有条件表达式的查询语句的问题,还能够快速动态查询数据。此外,本发明还涉及区块链技术,所述查询结果可存储于区块链中。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种动态查询方法、装置、设备及存储介质。
背景技术
在现有的带条件表达式的数据查询方案中,通过在数据库中执行开发人员编写好的查询语句后能够得到查询结果,然而,当新增新的查询需求时,这种方式需要开发人员根据新增的查询需求重新编写查询语句,不利于快速动态查询数据。
另外,MyBatis框架免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作,因此,使用MyBatis框架能够快速从数据库中获取到数据结果,然而,由于在MyBatis框架启动后无法直接拷取条件表达式,因此,MyBatis框架无法直接执行带有条件表达式的查询语句。
发明内容
鉴于以上内容,有必要提供一种动态查询方法、装置、设备及存储介质,不仅能够解决MyBatis框架无法直接执行带有条件表达式的查询语句的问题,还能够快速动态查询数据。
一方面,本发明提出一种动态查询方法,所述动态查询方法包括:
当接收到动态查询请求时,根据所述动态查询请求确定待查询数据库;
获取所述待查询数据库的配置文件;
读取所述配置文件中的每个指令,并解析读取到的指令,得到每个指令的变量及每个指令的变量表达式;
根据所述动态查询请求获取需求列表,并从所述需求列表中提取与所述变量对应的变量值;
检测所述变量值是否满足所述变量表达式;
若所述变量值满足所述变量表达式,根据所述变量值及所述变量表达式生成结构化查询语句;
利用MyBatis框架在所述待查询数据库中执行所述结构化查询语句,得到查询结果。
根据本发明优选实施例,所述根据所述动态查询请求确定待查询数据库包括:
获取所述动态查询请求的发送地址,并根据所述发送地址确定发送设备;
获取所述动态查询请求的接收时间,并根据所述接收时间从所述发送设备上获取目标日志;
将所述目标日志上的执行用户确定为所述动态查询请求的发送用户;
从预设用户列表中获取与所述发送用户对应的数据库作为所述待查询数据库。
根据本发明优选实施例,所述获取所述动态查询请求的发送地址包括:
解析所述动态查询请求的报文头,得到所述报文头携带的地址信息;
获取预设标签,所述预设标签用于指示发送请求的地址;
从所述地址信息中获取与所述预设标签对应的信息作为所述发送地址。
根据本发明优选实施例,在获取所述待查询数据库的配置文件之前,所述动态查询方法还包括:
从所述待查询数据库中获取所有参数,并获取每个参数的参数条件;
根据每个参数及每个参数条件生成初始语句;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安普惠企业管理有限公司,未经平安普惠企业管理有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110214284.4/2.html,转载请声明来源钻瓜专利网。





