语句查询方法、装置、电子设备和计算机可读介质与流程
未命名
09-22
阅读:75
评论:0
1.本公开的实施例涉及计算机技术领域,具体涉及语句查询方法、装置、电子设备和计算机可读介质。
背景技术:
2.批处理,是数据库中对批量的、相对复杂的事务进行处理的一项技术。目前,在处理包括多个子事务的事务时,需要单次执行函数实现多个事务。而postgresql数据库中的函数只能执行一个事务。
3.当在postgresql数据库中对复杂事务进行处理时,经常会存在如下技术问题:
4.第一,面对大数据量的处理,postgresql数据库中的函数中只能在调用进程结束的同时对事务进行关闭,处理过程中将导致数据行被锁定的时间较长,一旦有并发处理操作,将导致其它进程堵塞,且单个事务过于庞大,程序占用资源将越来越多,处理性能也会逐步下降。
5.第二,当数据库中存储的数据较多且密级较高时,直接利用原始的结构化查询语句进行数据查询,可能会导致数据泄露。
技术实现要素:
6.本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
7.本公开的一些实施例提出了语句查询方法、装置、电子设备和计算机可读介质,来解决以上背景技术部分提到的技术问题中的一项或多项。
8.第一方面,本公开的一些实施例提供了一种语句查询方法,该方法包括:获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句;利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句;上述拼接后查询语句作为入参传入至批量处理函数;根据上述目标对象-关系型数据库的连接状态,建立数据库连接;在上述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句;调用数据库连接函数根据上述动态查询语句进行查询处理。
9.第二方面,本公开的一些实施例提供了一种语句查询装置,装置包括:获取单元,被配置成获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句;第一拼接单元,被配置成利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句;批处理单元,被配置成将上述拼接后查询语句作为入参传入至批量处理函数;建立单元,被配置成根据上述目标对象-关系型数据库的连接状态,建立数据库连接;第二拼接单元,被配置成在上述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句;查询单元,被配置成调用数据库连接函数根据上述动态查询语句进行查询处理。
10.第三方面,本公开的一些实施例提供了一种电子设备,包括:一个或多个处理器;
存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述第一方面任一实现方式所描述的方法。
11.第四方面,本公开的一些实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现上述第一方面任一实现方式所描述的方法。
12.本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的语句查询方法,对于批量查询语句,通过逐一处理的方式来避免长时间资源不释放的问题,在对大数据处理会有明显的性能提升,在适当的控制批量提交量的同时,可支撑更高的并发量,减少对数据库的资源压力。基于此,本公开的一些实施例的语句查询方法,首先,获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句。由此,先逐一的获取针对目标对象-关系型数据库的结构化查询语句。然后,利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句。再然后,上述拼接后查询语句作为入参传入至批量处理函数。接着,根据上述目标对象-关系型数据库的连接状态,建立数据库连接。再接着,在上述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句。由此,可以跳过对返回值的判断,便于进行批处理。最后,调用数据库连接函数根据上述动态查询语句进行查询处理。由此,对于批量查询语句,通过逐一处理的方式来避免长时间资源不释放的问题,在对大数据处理会有明显的性能提升,在适当的控制批量提交量的同时,可支撑更高的并发量,减少对数据库的资源压力。
附图说明
13.结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,元件和元素不一定按照比例绘制。
14.图1是根据本公开的语句查询方法的一些实施例的流程图;
15.图2是本公开的语句查询装置的一些实施例的结构示意图;
16.图3是适于用来实现本公开的一些实施例的电子设备的结构示意图。
具体实施方式
17.下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例。相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
18.另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
19.需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
20.需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
21.本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
22.下面将参考附图并结合实施例来详细说明本公开。
23.参考图1,示出了根据本公开的语句查询方法的一些实施例的流程100。该语句查询方法,包括以下步骤:
24.步骤101,获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句。
25.在一些实施例中,语句查询方法的执行主体可以通过有线连接方式或者无线连接方式获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句。
26.作为示例,上述目标对象-关系型数据库可以是postgresql数据库。上述结构化查询语句可以是sql语句(structured query language,结构化查询语句)。
27.步骤102,利用逻辑处理函数对待处理查询语句进行拼接处理,得到拼接后查询语句。
28.在一些实施例中,上述执行主体利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句,可以包括以下步骤:
29.第一步,根据数据类型的不同,对上述结构化查询语句中的数据进行转换,数据转换后的查询语句。其中,可以利用预先设置的数据类型转化表对上述结构化查询语句中的不同类型的数据进行转换。
30.第二步,将上述数据转换后的查询语句中的空值替换为目标字符串,得到待处理查询语句。
31.作为示例,上述目标字符可以是$$。实践中,可以根据实际应用需要设置上述目标字符,此处不做限定。
32.在一些实施例的一些可选的实现方式中,上述执行主体在上述利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句之前,还可以执行以下步骤:
33.第一步,确定上述待处理查询语句的语句类型。其中,可以根据上述处理查询语句中表征语句类型的关键字确定上述待处理查询语句的语句类型。
34.作为示例,上述待处理查询语句的语句类型可以为查询、插入、删除等。
35.第二步,根据预设的字段映射信息和所确定的上述待处理查询语句的语句类型,对上述待处理查询语句中的字段类型进行加密处理,得到加密语。其中,上述字段映射信息可以包括至少一条替换信息。上述字段映射信息中包括的替换信息可以包括原字段和替换字段。
36.第三步,对上述加密语句进行存储。
37.第四步,响应于检测到数据库异常,将上述加密语句与上述加密语句关联的日志文件进行组合,得到异常文件信息。其中,可以根据接收到的数据库异常信息检测数据库异常。
38.第五步,将上述异常文件信息发送至目标终端。其中,上述目标终端可以用于展示上述异常文件信息。
39.可选的,上述执行主体根据预设的字段映射信息和所确定的上述待处理查询语句的语句类型,对上述待处理查询语句中的字段类型进行加密处理,得到加密语,可以包括以下步骤:
40.第一步,将上述待处理查询语句中的每个字段作为待匹配字段,执行以下匹配步
骤:
41.第一匹配步骤,确定上述字段映射信息中是否存在与上述待匹配字段匹配的替换信息。其中,上述字段映射信息中与上述待匹配字段匹配的替换信息可以是包括的原字段与上述待匹配字段相同的替换信息。
42.第二匹配步骤,将上述字段映射信息中与上述待匹配字段匹配的替换信息确定为目标替换信息。
43.第三匹配步骤,响应于确定上述字段映射信息中存在与上述待匹配字段匹配的替换信息,将上述待处理查询语句中的上述待匹配字段替换为上述目标替换信息中的替换字段。
44.第二步,响应于确定上述待处理查询语句中的每个待匹配字段均匹配完成,将替换后的待处理查询语句确定为替换查询语句。
45.可选的,上述执行主体根据预设的字段映射信息和所确定的上述待处理查询语句的语句类型,对上述待处理查询语句中的字段类型进行加密处理,得到加密语,还可以包括以下步骤:
46.第一步,响应于确定上述替换查询语句为查询语句,将上述替换查询语句中的各个查询条件字段确定为待映射查询条件字段,得到待映射查询条件字段集合。
47.第二步,根据预先设置的加密映射信息,对上述待映射查询条件字段集合中的每个待映射查询条件字段进行以下映射处理:
48.第一映射步骤,确定上述加密映射信息是否包括与上述待映射查询条件字段相匹配的加密信息。其中,上述密映射信息可以包括至少一条加密信息。上述密映射信息中的加密信息可以包括原字段和加密字段。上述加密映射信息中与上述待映射查询条件字段相匹配的加密信息可以是包括的原字段与上述待映射查询条件字段相同的加密信息。
49.第二映射步骤,响应于确定上述加密映射信息包括与上述待映射查询条件字段相匹配的加密信息,将上述加密映射信息中与上述待映射查询条件字段相匹配的加密信息确定为目标加密信息。
50.第三映射步骤,将上述待映射查询条件字段集合中的上述待映射查询条件字段替换为上述目标加密信息中的加密字段。
51.第三步,将每个替换后的待映射查询条件字段确定为映射查询条件字段,得到映射查询条件字段集合。
52.第四步,将上述替换查询语句中的每个查询条件字段替换为上述映射查询条件字段集合中对应的映射查询条件字段,得到初加密查询语句。
53.第五步,对上述初加密查询语句进行加密处理,得到加密语句。其中,可以利用对称加密算法、非对称加密算法、和线性散列加密算法等算法对上述初加密查询语句进行加密处理。
54.上述在上述利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句之前的步骤作为本公开的实施例的一个发明点,解决了背景技术提及的技术问题二“当数据库中存储的数据较多且密级较高时,直接利用原始的结构化查询语句进行数据查询,可能会导致数据泄露”。导致上述技术问题的因素往往如下:数据库中存储的数据较多且密级较高时,不采取保密措施易造成数据泄露。如果解决了上述因素,就能达到提高数
据库中数据保密性的效果。为了达到这一效果,本公开根据所确定的上述待处理查询语句的语句类型和预设的字段映射信息和加密映射信息,对上述待处理查询语句包括的字段进行替换处理,得到初加密查询语句。并对初加密查询语句进行进一步加密处理,由此,可以通过预设的字段映射信息和加密映射信息对待处理查询语句包括的字段进行替换处理,降低了涉密字段泄露的可能性,提升了数据库中所存储的数据的安全性。
55.步骤103,拼接后查询语句作为入参传入至批量处理函数。
56.在一些实施例中,上述执行主体可以上述拼接后查询语句作为入参传入至批量处理函数。
57.步骤104,根据目标对象-关系型数据库的连接状态,建立数据库连接。
58.在一些实施例中,上述执行主体根据上述目标对象-关系型数据库的连接状态,建立数据库连接,可以包括以下步骤:
59.第一步,根据上述拼接后查询语句中的连接状态入参,检测上述目标对象-关系型数据库的连接状态。其中,上述连接状态入参可以用于标识上述目标对象-关系型数据库的连接状态。
60.第二步,响应于确定上述目标对象-关系型数据库的连接状态满足第一预设条件,建立数据库连接。其中,上述第一预设条件可以是上述目标对象-关系型数据库的连接状态为默认状态。
61.在一些实施例的一些可选的实现方式中,上述执行主体还可以响应于确定上述目标对象-关系型数据库的连接状态表征关闭数据库连接、提交事务或回滚事务,终止语句查询操作。
62.步骤105,在拼接后查询语句后拼接空的数据操作语句,得到动态查询语句。
63.在一些实施例中,上述执行主体可以在拼接后查询语句后拼接空的数据操作语句,得到动态查询语句。其中,上述空的数据操作语句可以是空的dml(data manipulation language,数据操纵语言)语句。
64.由此可以用于跳过dblink_exec函数对返回值判断,可以使得批量处理过程中可兼容对函数的调用。
65.在一些实施例的一些可选的实现方式中,上述执行主体在上述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句之前,还可以执行以下步骤:
66.第一步,确定上述拼接后查询语句是否为空。
67.第二步,响应于确定上述拼接后查询语句为空,生成异常信息,以及终止语句查询操作。
68.步骤106,调用数据库连接函数根据动态查询语句进行查询处理。
69.在一些实施例中,上述执行主体可以调用数据库连接函数根据上述动态查询语句进行查询处理。
70.作为示例,可以调用dblink_exec函数,完成对动态查询语句的处理。
71.在一些实施例的一些可选的实现方式中,上述执行主体可以响应于确定上述调用数据库连接函数根据上述动态查询语句进行查询处理执行完毕,重新获取针对目标对象-关系型数据库的结构化查询语句,以及继续执行语句查询操作。
72.由此,不做独立的事务结束操作,重新获取结构化查询语句进行循环处理。
73.本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的语句查询方法,对于批量查询语句,通过逐一处理的方式来避免长时间资源不释放的问题,在对大数据处理会有明显的性能提升,在适当的控制批量提交量的同时,可支撑更高的并发量,减少对数据库的资源压力。基于此,本公开的一些实施例的语句查询方法,首先,获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句。由此,先逐一的获取针对目标对象-关系型数据库的结构化查询语句。然后,利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句。再然后,上述拼接后查询语句作为入参传入至批量处理函数。接着,根据上述目标对象-关系型数据库的连接状态,建立数据库连接。再接着,在上述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句。由此,可以跳过对返回值的判断,便于进行批处理。最后,调用数据库连接函数根据上述动态查询语句进行查询处理。由此,对于批量查询语句,通过逐一处理的方式来避免长时间资源不释放的问题,在对大数据处理会有明显的性能提升,在适当的控制批量提交量的同时,可支撑更高的并发量,减少对数据库的资源压力。
74.进一步参考图2,作为对上述各图所示方法的实现,本公开提供了一种语句查询装置的一些实施例,这些装置实施例与图1所示的那些方法实施例相对应,该装置具体可以应用于各种电子设备中。
75.如图2所示,一些实施例的语句查询装置200包括:获取单元201、第一拼接单元202、批处理单元203、建立单元204、第二拼接单元205和查询单元206。其中,获取单元201,被配置成获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句;第一拼接单元202,被配置成利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句;批处理单元203,被配置成将上述拼接后查询语句作为入参传入至批量处理函数;建立单元204,被配置成根据上述目标对象-关系型数据库的连接状态,建立数据库连接;第二拼接单元205,被配置成在上述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句;查询单元206,被配置成调用数据库连接函数根据上述动态查询语句进行查询处理。
76.可以理解的是,语句查询装置200中记载的诸单元与参考图1描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作、特征以及产生的有益效果同样适用于语句查询装置200及其中包含的单元,在此不再赘述。
77.下面参考图3,其示出了适于用来实现本公开的一些实施例的电子设备300的结构示意图。图3示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
78.如图3所示,电子设备300可以包括处理装置(例如中央处理器、图形处理器等)301,其可以根据存储在只读存储器(rom)302中的程序或者从存储装置308加载到随机访问存储器(ram)303中的程序而执行各种适当的动作和处理。在ram 303中,还存储有电子设备300操作所需的各种程序和数据。处理装置301、rom 302以及ram 303通过总线304彼此相连。输入/输出(i/o)接口305也连接至总线304。
79.通常,以下装置可以连接至i/o接口305:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置306;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置307;以及通信装置309。通信装置309可以允许电子设备300与其他设备
进行无线或有线通信以交换数据。虽然图3示出了具有各种装置的电子设备300,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图3中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
80.特别地,根据本公开的一些实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的一些实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的一些实施例中,该计算机程序可以通过通信装置309从网络上被下载和安装,或者从存储装置308被安装,或者从rom 302被安装。在该计算机程序被处理装置301执行时,执行本公开的一些实施例的方法中限定的上述功能。
81.需要说明的是,本公开的一些实施例中记载的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的一些实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的一些实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
82.在一些实施方式中,客户端、服务器可以利用诸如http(hypertext transfer protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
83.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句;利用逻辑处理函数对上述待处理查询语句进行拼接处理,得到拼接后查询语句;上述拼接后查询语句作为入参传入至批量处理函数;根据上述目标对象-关系型数据库的连接状态,建立数据库连接;在上述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句;调用数据库连接函数根据上述动态查询语句进行查询处理。
84.可以以一种或多种程序设计语言或其组合来编写用于执行本公开的一些实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语
言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
85.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
86.描述于本公开的一些实施例中的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、第一拼接单元、批处理单元、建立单元、第二拼接单元和查询单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句单元”。
87.本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
技术特征:
1.一种语句查询方法,包括:获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句;利用逻辑处理函数对所述待处理查询语句进行拼接处理,得到拼接后查询语句;将所述拼接后查询语句作为入参传入至批量处理函数;根据所述目标对象-关系型数据库的连接状态,建立数据库连接;在所述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句;调用数据库连接函数根据所述动态查询语句进行查询处理。2.根据权利要求1所述的方法,其中,所述根据所述目标对象-关系型数据库的连接状态,建立数据库连接,包括:根据所述拼接后查询语句中的连接状态入参,检测所述目标对象-关系型数据库的连接状态;响应于确定所述目标对象-关系型数据库的连接状态满足第一预设条件,建立数据库连接。3.根据权利要求2所述的方法,其中,所述方法还包括:响应于确定所述目标对象-关系型数据库的连接状态表征关闭数据库连接、提交事务或回滚事务,终止语句查询操作。4.根据权利要求3所述的方法,其中,所述利用逻辑处理函数对所述待处理查询语句进行拼接处理,得到拼接后查询语句,包括:根据数据类型的不同,对所述待处理查询语句中的数据进行转换,数据转换后的查询语句;将所述数据转换后的查询语句中的空值替换为目标字符串,得到待处理查询语句。5.根据权利要求4所述的方法,其中,所述在所述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句之前,所述方法还包括:确定所述拼接后查询语句是否为空;响应于确定所述拼接后查询语句为空,生成异常信息,以及终止语句查询操作。6.根据权利要求5所述的方法,其中,所述方法还包括:响应于确定所述调用数据库连接函数根据所述动态查询语句进行查询处理执行完毕,重新获取针对目标对象-关系型数据库的结构化查询语句,以及继续执行语句查询操作。7.根据权利要求6所述的方法,其中,在所述利用逻辑处理函数对所述待处理查询语句进行拼接处理,得到拼接后查询语句之前,所述方法还包括:确定所述待处理查询语句的语句类型;根据预设的字段映射信息和所确定的所述待处理查询语句的语句类型,对所述待处理查询语句中的字段类型进行加密处理,得到加密语,其中,所述字段映射信息包括至少一条替换信息,所述字段映射信息中包括的替换信息包括原字段和替换字段;对所述加密语句进行存储;响应于检测到数据库异常,将所述加密语句与所述加密语句关联的日志文件进行组合,得到异常文件信息;将所述异常文件信息发送至目标终端。8.一种语句查询装置,包括:
获取单元,被配置成获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句;第一拼接单元,被配置成利用逻辑处理函数对所述待处理查询语句进行拼接处理,得到拼接后查询语句;批处理单元,被配置成将所述拼接后查询语句作为入参传入至批量处理函数;建立单元,被配置成根据所述目标对象-关系型数据库的连接状态,建立数据库连接;第二拼接单元,被配置成在所述拼接后查询语句后拼接空的数据操作语句,得到动态查询语句;查询单元,被配置成调用数据库连接函数根据所述动态查询语句进行查询处理。9.一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。10.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。
技术总结
本公开的实施例公开了语句查询方法、装置、电子设备和计算机可读介质。该方法的一具体实施方式包括:获取针对目标对象-关系型数据库的结构化查询语句,得到待处理查询语句;利用逻辑处理函数对待处理查询语句进行拼接处理,得到拼接后查询语句;拼接后查询语句作为入参传入至批量处理函数;根据目标对象-关系型数据库的连接状态,建立数据库连接;在拼接后查询语句后拼接空的数据操作语句,得到动态查询语句;调用数据库连接函数根据动态查询语句进行查询处理。该实施方式对于批量查询语句,通过逐一处理的方式来避免长时间资源不释放的问题,在对大数据处理会有明显的性能提升。升。升。
技术研发人员:吴勇民
受保护的技术使用者:杭州拼便宜网络科技有限公司
技术研发日:2023.05.05
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/