数据库操作的处理方法、存储介质与计算机设备技术

技术编号:37049668 阅读:16 留言:0更新日期:2023-03-29 19:27
本发明专利技术提供了一种数据库操作的处理方法、存储介质与计算机设备。其中上述方法包括:将客户端会话连接至预先设立的虚拟连接之中;获取数据库的物理连接链表;判断物理连接链表中是否存在与客户端会话对应的物理连接;若否,则通过虚拟连接为客户端会话创建对应的物理连接,并在物理连接链表中记录物理连接的信息;通过物理连接执行数据库操作,并将得到的结果集存储在物理连接的缓存之中。这中操作方法,在面对多个请求时,客户端只需要根据每个请求新建对应的会话连接至数据库系统对外暴露的虚拟连接,虚拟连接会自主生成对应的物理连接。由此,降低了数据库使用的复杂度,并且能够实现物理连接的复用,节省了数据库系统的资源。源。源。

【技术实现步骤摘要】
数据库操作的处理方法、存储介质与计算机设备


[0001]本专利技术涉及数据库技术,特别是涉及一种数据库操作的处理方法、存储介质与计算机设备。

技术介绍

[0002]在一些数据库使用场景中,用户在一个连接中使用数据库操作语句时,首先数据库会在连接之中存储数据库操作的结果集,随后需要用户使用获取数据的操作来得到结果集之中的数据。
[0003]当用户使用了数据库操作语句之后,并没有获取结果集中的数据时,又需要执行另外一个数据库操作,现有的一种做法是应用程序必须先处理或者取消连接之中已有的结果集,然后才能对该连接执行其他数据库操作。同时,在应用端的代码逻辑中,对于多个操作语句须由多个物理连接来执行,如此,用户操作数据库的步骤会非常繁琐,尤其是当同时需要执行多个数据库操作语句时会提升用户操作数据库的复杂度,造成较差的使用体验。

技术实现思路

[0004]本专利技术的一个目的是要减少使用数据库引擎操作多活动结果集的复杂度。
[0005]本专利技术一个进一步的目的是允许多种不同类型的数据库操作语句的交错执行。
[0006]本专利技术一个进一步的目的是提升数据库使用的便利性。
[0007]特别地,本专利技术提供了一种数据库操作的处理方法,其包括:
[0008]获取客户端会话请求;
[0009]将客户端会话连接至数据库预先设立的虚拟连接之中;
[0010]获取数据库的物理连接链表,物理连接链表用于记录数据库的物理连接信息;
[0011]判断物理连接链表中是否存在与客户端会话对应的物理连接;
[0012]若否,则通过虚拟连接为客户端会话创建对应的物理连接,并在物理连接链表中记录客户端会话对应的物理连接的信息;
[0013]通过物理连接执行数据库操作,并将数据库操作得到的结果集存储在物理连接的缓存之中。
[0014]可选地,获取数据库的物理连接链表的步骤包括:
[0015]判断数据库中是否存在物理连接链表:
[0016]若是,则执行判断物理连接链表中是否存在与客户端会话对应的物理连接的步骤。
[0017]可选地,判断数据库中是否存在物理连接链表的步骤之后还包括:
[0018]若数据库中不存在物理连接链表,则创建物理连接链表。
[0019]可选地,判断物理连接链表中是否存在与客户端会话对应的物理连接的步骤之后还包括:
[0020]若是,判断物理连接是否正在使用;
[0021]在物理连接没有使用的情况下,通过虚拟连接为物理连接与客户端会话建立关联关系,并在物理连接链表中更新物理连接的信息;
[0022]通过物理连接执行数据库操作,并将结果集存储在物理连接之中。
[0023]可选地,判断物理连接是否正在使用的步骤之后还包括:
[0024]在物理连接正在被其他会话使用的情况下,等待物理连接使用完毕;
[0025]在物理连接使用完毕之后,通过虚拟连接为物理连接与客户端会话建立关联关系,并在物理连接链表中更新物理连接的信息;
[0026]通过物理连接执行数据库操作,并将结果集存储在物理连接之中。
[0027]可选地,通过物理连接执行数据库操作,并将数据库操作得到的结果集存储在物理连接的缓存之中的步骤之后还包括:
[0028]在客户端会话中开始获取结果集时,判断在物理连接链表中是否存在与客户端会话对应的物理连接;
[0029]若是,则判断物理连接的缓存中是否存在结果集;
[0030]在物理连接的缓存中存在结果集的情况下,将结果集中的数据返回给客户端。
[0031]可选地,判断在物理连接链表中是否存在与客户端会话对应的物理连接的步骤之后还包括:
[0032]在物理连接链表中不存在与客户端会话对应的物理连接情况下,输出提示信息并返回。
[0033]可选地,判断物理连接的缓存中是否存在结果集的步骤之后还包括:
[0034]在物理连接中不存在结果集的情况下,输出提示信息并返回。
[0035]根据本专利技术的另一个方面,还提供了一种机器可读存储介质,其上存储有机器可执行程序,机器可执行程序被处理器执行时实现上述任一种的数据库操作的处理方法。
[0036]根据本专利技术的又一个方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并在处理器上运行的机器可执行程序,并且处理器执行机器可执行程序时实现上述任一种的数据库操作的处理方法。
[0037]本专利技术的数据库操作的处理方法,面对来自客户端的请求,客户端新建会话与服务端预设的虚拟连接相关联,然后获取数据库内部的物理连接链表,在物理连接链表中查看是否存在与此会话相对应的物理连接,若存在,则直接使用对应的物理连接,并通过虚拟连接为此会话和该物理连接建立关联关系;若不存在,则创建此会话对应的物理连接,并通过虚拟连接建立关联关系;然后更新物理连接链表中的信息,接着通过该物理连接对数据库执行操作,将结果集存储在该物理连接的缓存之中,等待客户端获取。该方法将原本需要客户端创建的物理连接封装在服务端之中,客户端在执行多个请求时,只需要建立多个会话,全部与应用端预设的虚拟连接相关联,在服务端内部,便会通过该虚拟连接自主地在物理连接链表中查询该会话对应的物理连接,若没有该会话对应的物理连接便会自动创建,随后通过虚拟连接将客户端会话与该物理连接相关联,通过该物理连接执行后续操作。这样减少了客户端操作数据库的复杂度,提升了数据库引擎使用的便利性。
[0038]进一步地,本专利技术的数据库操作的处理方法,客户端发送多个数据库操作请求时,只需要创建多个会话连接数据库应用端中的虚拟连接,该虚拟连接会自动为每个会话匹配或创建对应的物理连接,随后通过物理连接对数据库进行操作,并将结果集存储在各个物
理连接自身的缓存之中。这样能够实现多个不同操作请求在数据库引擎中的交错执行互不影响的目的,提升数据库引擎的性能和客户端操作数据库的便利性。
[0039]进一步地,本专利技术的数据库操作的处理方法,在客户端发送获取结果集数据的请求时,通过该虚拟连接在数据库内部的物理连接链表中获取该会话对应的物理连接中的结果集信息,若不存在该会话对应的物理连接,或该会话对应的物理连接的缓存中不存在结果集,则返回相应的提示信息给客户端。这样做可以在客户端发送请求之后,在有其他数据库操作请求执行时,也可以通过原先会话获取请求对应的结果集信息,不需要客户端新建物理连接,降低了客户端操作数据库的复杂度,提升数据库引擎使用的便利性。
[0040]根据下文结合附图对本专利技术具体实施例的详细描述,本领域技术人员将会更加明了本专利技术的上述以及其他目的、优点和特征。
附图说明
[0041]后文将参照附图以示例性而非限制性的方式详细描述本专利技术的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
[0042]图1是根据本专利技术一个实施例的数据库操本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库操作的处理方法,包括:获取客户端会话请求;将所述客户端会话连接至所述数据库预先设立的虚拟连接之中;获取所述数据库的物理连接链表,所述物理连接链表用于记录所述数据库的物理连接信息;判断所述物理连接链表中是否存在与所述客户端会话对应的物理连接;若否,则通过所述虚拟连接为所述客户端会话创建对应的物理连接,并在所述物理连接链表中记录所述客户端会话对应的物理连接的信息;通过所述物理连接执行数据库操作,并将所述数据库操作得到的结果集存储在所述物理连接的缓存之中。2.根据权利要求1所述的数据库操作的处理方法,其中,所述获取所述数据库的物理连接链表的步骤包括:判断所述数据库中是否存在所述物理连接链表:若是,则执行判断所述物理连接链表中是否存在与所述客户端会话对应的物理连接的步骤。3.根据权利要求2所述的数据库操作的处理方法,其中,所述判断所述数据库中是否存在所述物理连接链表的步骤之后还包括:若所述数据库中不存在所述物理连接链表,则创建所述物理连接链表。4.根据权利要求1所述的数据库操作的处理方法,其中,所述判断所述物理连接链表中是否存在与所述客户端会话对应的物理连接的步骤之后还包括:若是,判断所述物理连接是否正在使用;在所述物理连接没有使用的情况下,通过所述虚拟连接为所述物理连接与所述客户端会话建立关联关系,并在所述物理连接链表中更新所述物理连接的信息;通过所述物理连接执行数据库操作,并将结果集存储在所述物理连接之中。5.根据权利要求4所述的数据库操作的处理方法,其中,所述判断所述物理连接是否正在使用的步骤之后还包括:在所述物理连接正在被其他会话使用的情况下,等...

【专利技术属性】
技术研发人员:贾学娇李楠
申请(专利权)人:北京人大金仓信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1