基于Django框架的数据库适配方法、装置及设备与流程

摘要: 本申请属于数据库,尤其涉及一种基于django框架的数据库适配方法、装置及设备。背景技术:1、gbase8s数据库与mysql、postgresql等主流数据库...
基于Django框架的数据库适配方法、装置及设备与流程

本申请属于数据库,尤其涉及一种基于django框架的数据库适配方法、装置及设备。

背景技术:

1、gbase8s数据库与mysql、postgresql等主流数据库在字段类型、sql语法、连接交互等方面存在显著原生差异,django框架无法原生兼容。同时,现有适配方案多停留在表层sql语句转换,未与django的迁移、内省等核心生态深度集成,无法根据不同数据库请求实施差异化适配,业务层往往需要额外修改代码,难以满足基于django框架的项目对接gbase8s数据库的实际需求。

技术实现思路

1、本申请旨在至少解决相关技术中存在的技术问题之一。为此,本申请提出一种基于django框架的数据库适配方法、装置及设备,本申请提高了基于django框架对接gbase8s数据库的开发效率。

2、第一方面,本申请提供了一种基于django框架的数据库适配方法,该方法包括:

3、根据gbase8s数据库的连接参数,建立服务与所述gbase8s数据库之间的数据库连接,所述服务基于django框架构建;

4、响应通过所述django框架发起的数据库请求,对所述数据库连接进行有效性验证;

5、在所述有效性验证通过的情况下,根据所述数据库请求的类型执行对应的适配处理,生成适配所述gbase8s数据库的目标交互内容;

6、根据所述目标交互内容与所述gbase8s数据库执行交互,并对交互结果执行对应的适配处理,得到适配所述django框架的数据库请求结果。

7、在上述技术方案中,在建立服务与gbase8s数据库之间的数据库连接后,通过连接有效性验证,提前识别无效连接,避免因连接异常导致请求执行失败;在有效性验证通过的情况下,按数据库请求类型实施差异化适配,可针对不同场景的数据库请求采用适配逻辑,避免通用适配导致的兼容性不足或适配冗余问题,能够贴合django框架各功能模块的原生运行机制,实现与框架生态的深度集成;并对交互结果执行对应的适配处理,实现从请求下发到结果返回的全流程自动化适配,解决了django框架无法原生支持gbase8 数据库的问题;且业务层无感知、无侵入,相较于对sql语句做表层字符替换的简单实现,贴合django框架各功能的原生运行机制实现了django框架与gbase8s数据库的高效交互,提高了基于django框架对接gbase8s数据库的开发效率。

8、第二方面,本申请提供了一种基于django框架的数据库适配装置,该装置包括:

9、连接模块,用于根据gbase8s数据库的连接参数,建立服务与所述gbase8s数据库之间的数据库连接,所述服务基于django框架构建;

10、验证模块,用于响应通过所述django框架发起的数据库请求,对所述数据库连接进行有效性验证;

11、适配模块,用于在所述有效性验证通过的情况下,根据所述数据库请求的类型执行对应的适配处理,生成适配所述gbase8s数据库的目标交互内容;

12、交互模块,用于根据所述目标交互内容与所述gbase8s数据库执行交互,并对交互结果执行对应的适配处理,得到适配所述django框架的数据库请求结果。

13、第三方面,本申请提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的基于django框架的数据库适配方法。

14、第四方面,本申请提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的基于django框架的数据库适配方法。

15、第五方面,本申请提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的基于django框架的数据库适配方法。

16、第六方面,本申请提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的基于django框架的数据库适配方法。

17、本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

1.一种基于django框架的数据库适配方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述数据库请求的类型包括数据操作请求、数据库迁移请求、数据库内省请求、命令行交互请求中的至少一种;

3.根据权利要求2所述的方法,其特征在于,所述根据预设的字段映射规则以及所述gbase8s数据库的语法规则,将所述数据操作请求对应的sql语句转换为适配所述gbase8s数据库的执行sql语句,包括:

4.根据权利要求2或3所述的方法,其特征在于,所述字段映射规则还用于:

5.根据权利要求2所述的方法,其特征在于,所述根据所述目标交互内容与所述gbase8s数据库执行交互,并对交互结果执行对应的适配处理,得到适配所述django框架的数据库请求结果,包括;

6.根据权利要求2或5所述的方法,其特征在于,所述根据所述目标交互内容与所述gbase8s数据库执行交互,并对交互结果执行对应的适配处理,得到适配所述django框架的数据库请求结果,包括:

7.根据权利要求1所述的方法,其特征在于,所述对所述数据库连接进行有效性验证,包括:

8.一种基于django框架的数据库适配装置,其特征在于,

9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7中任一项所述基于django框架的数据库适配方法。

10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7中任一项所述的基于django框架的数据库适配方法。