django中游标如何选择数据库
How cursor selects a database in django
我对 python 中的游标有疑问,如果我的设置中有多个数据库并且我想在将数据导出到 excel 文件的函数中打开一个游标打开pyxl。
我的问题是我的光标如何知道要连接哪个数据库以及它是如何连接的。
提前致谢
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'default',
'USER': 'postgres',
'PASSWORD': 'xxxx',
'HOST': '127.0.0.1',
'PORT': '5432',
},
'test1': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'test1',
'USER': 'postgres',
'PASSWORD': 'xxxx',
'HOST': '127.0.0.1',
'PORT': '5433',
},
'test2': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'test2',
'USER': 'postgres',
'PASSWORD': 'xxxx',
'HOST': '127.0.0.1',
'PORT': '5432',
}
}
它将使用 default
数据库。如果您需要使用不同的数据库,请使用:
from django.db import connections
cursor = connections['my_db_alias'].cursor()
来自文档 here。
我对 python 中的游标有疑问,如果我的设置中有多个数据库并且我想在将数据导出到 excel 文件的函数中打开一个游标打开pyxl。 我的问题是我的光标如何知道要连接哪个数据库以及它是如何连接的。
提前致谢
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'default',
'USER': 'postgres',
'PASSWORD': 'xxxx',
'HOST': '127.0.0.1',
'PORT': '5432',
},
'test1': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'test1',
'USER': 'postgres',
'PASSWORD': 'xxxx',
'HOST': '127.0.0.1',
'PORT': '5433',
},
'test2': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'test2',
'USER': 'postgres',
'PASSWORD': 'xxxx',
'HOST': '127.0.0.1',
'PORT': '5432',
}
}
它将使用 default
数据库。如果您需要使用不同的数据库,请使用:
from django.db import connections
cursor = connections['my_db_alias'].cursor()
来自文档 here。