要在django中查询一个特定的数据库,我可以这样做:
Item.objects.using('specific_db').all()
有没有办法使用django连接来做同样的事情?例如:
>>> from django.db import connection >>> cursor=connection.using('specific_db').cursor()
如果没有,我如何在不手动提供所有凭据的情况下获得特定DB的游标/连接?
axkjgtzd1#
根据django关于在多个数据库上使用原始SQL的文档,你应该使用connections而不是connection:
connections
connection
from django.db import connections cursor = connections['specific_db'].cursor() cursor.execute("select * from item")
kwvwclae2#
使用此代码段执行原始SQL查询从django.db导入连接
def connect_to_db(): with connection.cursor() as cursor: cursor.execute("""SELECT * FROM Table""") return dict(zip([col[0] for col in cursor.description], row)) for row / in cursor.fetchall()
2条答案
按热度按时间axkjgtzd1#
根据django关于在多个数据库上使用原始SQL的文档,你应该使用
connections
而不是connection
:kwvwclae2#
使用此代码段执行原始SQL查询
从django.db导入连接