Django同时连接多种数据库的实现
作者:当我们不再理解世界
在开发Django项目的时候,很多时候都是使用一个数据库,即settings 中只有default数据库,但是有一些项目确实也需要使用多个数据库,本文主要介绍了Django同时连接多种数据库的实现,感兴趣的可以了解一下
我的使用场景需要同时连接达梦数据库和MYSQL数据库,有的功能需要查询达梦,有的功能则需要查询MYSQL。
第一步:在 Django 的 settings.py 文件中,配置多个数据库连接。你可以在 DATABASES 字典中添加多个数据库配置。每个数据库配置都使用一个不同的名称,以便在代码中进行引用。例如:
DATABASES = { 'default': { # 达梦数据库 'ENGINE': 'django_dmPython', 'NAME': 'DAMENG', 'USER': 'SYSDBA', 'PASSWORD': '123456789', 'HOST': '127.0.0.1', 'PORT': '5236', 'OPTIONS': {'local_code': 1, 'connection_timeout': 5} }, 'mysql': { # MYSQL数据库 'ENGINE': 'django.db.backends.mysql', 'NAME': 'demo', 'USER': 'root', 'PASSWORD': 'root', 'HOST': '127.0.0.1', 'PORT': '3306', } }
第二步:在你的视图函数或管理命令中,你也可以使用 using 关键字来指定要使用的数据库连接。例如:
from django.db import connections def my_view(request): with connections['mysql'].cursor() as cursor: # 连接MYSQL cursor.execute('SELECT * FROM my_table') result = cursor.fetchall()
到此这篇关于Django同时连接多种数据库的实现的文章就介绍到这了,更多相关Django连接多种数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!