2013-08-14 9 views
5

У меня есть проект Django, который использует несколько баз данных. https://docs.djangoproject.com/en/dev/topics/db/multi-db/Django, несколько баз данных с сырым sql. Как выбрать db?

Я выполняю много сырых запросов, как это:

cursor = connection.cursor() 
    cursor.execute("select * from my_table") 
    .... 
    transaction.commit_unless_managed() 

Как я могу определить, какие базы данных для использования?

+0

Вы пробовали 'transaction.commit_unless_managed (using = 'database_entry')'? – arulmr

+0

Никто не связался с фактической документацией, что очень ясно: https://docs.djangoproject.com/en/dev/topics/db/transactions/ –

ответ

14

См. Django docs на executing custom query directly. Укажите базу данных в связи, как указано ниже:

from django.db import connections 
cursor = connections['db_alias'].cursor() 
# Your code here... 

А затем совершить с помощью

transaction.commit_unless_managed(using='db_alias') 
0

попробовать это может быть она должна работать корректно.

from django.db import connections 
cursor = connections[’my_db_name’].cursor() 
# Your code here... 
transaction.commit_unless_managed(using=’my_db_name’) 
Смежные вопросы