django-pyodbc-azure - Как использовать схемы
Я использую django-pyodbc-azure ( https://github.com/michiya/django-pyodbc-azure) и все работает нормально. Однако при переносе моделей в базе данных SQL Server создается новая схема с именем "dbo". Я хочу использовать уже существующую схему sp, есть ли способ установить рабочую схему?
Заранее спасибо.
2 ответа
IIRC, вам нужно изменить схему по умолчанию для пользователя, к которому вы подключаетесь. Если вы используете пользователя аутентификации SQL с именем django_user
:
ALTER USER django_user WITH DEFAULT_SCHEMA = [sp]
Удачи.
Определите db_table для класса Meta одной модели следующим образом:
db_table = "[your_schema].[your_table]"
Я обнаружил, что некоторые ответы, похоже, больше не работают. Вместо этого я использую инструкции, найденные здесь чтобы установить схему при определенииdb_table
как это идет schema].[table
. Не открывайте эти квадратные скобки; важный бит - это].[
между схемой и именем таблицы.
В вашем случае вам нужно будет установить:
class Meta:
managed = False
db_table = 'sp].[tablename'