本申请涉及数据处理,具体地涉及一种数据库访问方法、数据库网关装置、电子设备及计算机可读存储介质。
背景技术:
1、数据库是按照数据结构来组织、存储和管理数据的仓库,客户端可以通过访问数据库对数据库中的数据进行新增、截取、更新和删除等操作。
2、相关技术中客户端程序对数据库的连接和操作,一般需要客户端程序将客户端使用的特定通信协议转换为数据库支持的通信协议。
3、铁路客票系统通常同时使用多个不同类型的数据库,由于不同类型数据库支持的通信协议不同,所以客户端与不同类型数据库通信时,需要客户端程序将客户端使用的特定通信协议转换为不同类型数据库支持的通信协议,因此开发人员在开发或维护程序时,需要学习不同类型数据库支持的通信协议,增加了开发人员的工作量。
4、需要指出的是,公开于本申请背景技术部分的信息仅仅旨在加深对本申请的一般背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成己为本领域技术人员所公知的现有技术。
技术实现思路
1、有鉴于此,本申请提供了一种数据库访问方法、数据库网关装置、电子设备及存储介质,以利于解决现有技术中客户端与不同类型数据库通信时,需要客户端程序将客户端使用的特定通信协议转换为不同类型数据库支持的通信协议,因此开发人员的工作量较大的问题。
2、第一方面,本申请实施例提供一种数据库访问方法,所述方法包括:
3、接收客户端基于第一通信协议发送的数据库访问请求消息;
4、根据所述数据库访问请求消息,确定数据库集合中的一个或多个目标数据库,以及一个或多个所述目标数据库支持的第二通信协议;
5、基于所述第二通信协议向一个或多个所述目标数据库发送所述数据库访问请求消息;
6、接收一个或多个所述目标数据库基于所述第二通信协议发送的第一数据库访问响应消息;
7、基于所述第一通信协议向所述客户端发送所述第一数据库访问响应消息。
8、在一种可能的实现方式中,
9、在所述接收客户端基于第一通信协议发送的数据库访问请求消息之后,还包括:判断所述客户端是否具有所述数据库集合中数据库的访问权限;
10、所述根据所述数据库访问请求消息,确定数据库集合中的一个或多个目标数据库,以及一个或多个所述目标数据库支持的第二通信协议,包括:若判断所述客户端具有所述数据库集合中数据库的访问权限,则根据所述数据库访问请求消息,确定数据库集合中的一个或多个目标数据库,以及一个或多个所述目标数据库支持的第二通信协议。
11、在一种可能的实现方式中,所述根据所述数据库访问请求消息,确定数据库集合中的一个或多个目标数据库,包括:
12、根据所述数据库访问请求消息以及每个数据库的负载情况,确定数据库集合中的一个或多个目标数据库。
13、在一种可能的实现方式中,所述根据所述数据库访问请求消息,确定数据库集合中的一个或多个目标数据库,包括:
14、根据所述数据库访问请求消息,确定数据库访问请求摘要,所述数据库访问请求摘要用于确定一个或多个所述目标数据库中的目标表;
15、根据所述数据库访问请求摘要,确定数据库集合中的一个或多个目标数据库中的目标表。
16、在一种可能的实现方式中,所述方法还包括:
17、存储所述数据库集合中的指定数据;
18、基于所述第一通信协议向所述客户端发送第二数据库访问响应消息,所述第二数据库访问响应消息中包括至少部分所述指定数据。
19、在一种可能的实现方式中,在所述基于所述第二通信协议向一个或多个所述目标数据库发送所述数据库访问请求消息之前,还包括:
20、创建与一个或多个所述目标数据库之间的连接。
21、在一种可能的实现方式中,在所述接收一个或多个所述目标数据库基于所述第二通信协议发送的第一数据库访问响应消息之后,还包括:
22、释放与一个或多个所述目标数据库之间的连接。
23、在一种可能的实现方式中,所述数据库集合中的数据库至少支持两种通信协议。
24、第二方面,本申请实施例提供了一种数据库网关装置,包括:
25、数据库访问请求信息接收模块,用于接收客户端基于第一通信协议发送的数据库访问请求消息;
26、目标数据库确定模块,用于根据所述数据库访问请求消息,确定数据库集合中的一个或多个目标数据库,以及一个或多个所述目标数据库支持的第二通信协议;
27、数据库访问请求信息发送模块,用于基于所述第二通信协议向一个或多个所述目标数据库发送所述数据库访问请求消息;
28、数据库访问响应信息接收模块,用于接收一个或多个所述目标数据库基于所述第二通信协议发送的第一数据库访问响应消息;
29、数据库访问相应信息发送模块,用于基于所述第一通信协议向所述客户端发送所述第一数据库访问响应消息。
30、第三方面,本申请实施例提供了一种电子设备,包括:
31、处理器;
32、存储器;
33、以及计算机程序,其中所述计算机程序被存储在所述存储器中,所述计算机程序包括指令,当所述指令被所述处理器执行时,使得所述电子设备执行第一方面所述的方法。
34、第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行第一方面所述的方法。
35、采用本申请实施例提供的方案,通过数据库网关装置将客户端使用的特定通信协议转换为不同类型数据库支持的通信协议,开发人员在开发或维护客户端程序时,不需要学习不同类型数据库支持的通信协议,减少了开发人员的工作量,节约学习成本。
1.一种数据库访问方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,
3.根据权利要求1所述的方法,其特征在于,所述根据所述数据库访问请求消息,确定数据库集合中的一个或多个目标数据库,包括:
4.根据权利要求1所述的方法,其特征在于,所述根据所述数据库访问请求消息,确定数据库集合中的一个或多个目标数据库,包括:
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,在所述基于所述第二通信协议向一个或多个所述目标数据库发送所述数据库访问请求消息之前,还包括:
7.根据权利要求1所述的方法,其特征在于,在所述接收一个或多个所述目标数据库基于所述第二通信协议发送的第一数据库访问响应消息之后,还包括:
8.根据权利要求1所述的方法,其特征在于,所述数据库集合中的数据库至少支持两种通信协议。
9.一种数据库网关装置,其特征在于,包括:
10.一种电子设备,其特征在于,包括:
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至8中任意一项所述的方法。