Как подключить Django к существующей БД Microsoft SQL Server, хранящейся в Azure?

Я создал Django API, подключенный к React frontend. Я пытаюсь подключить Django API к уже существующей базе данных mssql на Azure. Насколько я понимаю, мне нужно внедрить все существующие таблицы из базы данных в файл models.py. Если это не так, и я могу получить доступ к выбранным таблицам, пожалуйста, дайте мне знать.

Я установил pyodbc, djagno-pyodbc-azure и mssql-django.

В моем файле settings.py у меня есть данные:

DATABASES = {
    'default': {
        'ENGINE': 'mssql',
        'NAME': 'DBNAME',
        'USER': 'USERNAME',
        'PASSWORD': 'PW',
        'HOST' : 'tcp:dbname.database.windows.net',
        'PORT': '1442',
        'OPTIONS': {
            'driver': 'ODBC Driver 13 for SQL Server',
            }
    },
}

Я пробовал удалять "tcp:" из хоста, я пробовал "sql_server.pyodbc" в качестве ENGINE. Я установил несколько других пакетов.

Когда я запускаю "python manage.py inspectdb > models.py" для импорта моделей существующей базы данных, я получаю либо пустой файл models.py, либо ошибку "django.db.utils.Error: ('01000'...". Чувствую себя немного в тупике и хотел узнать, есть ли у кого-нибудь какие-нибудь рекомендации.

Вам необходимо внести некоторые изменения в свою конфигурацию. USER должен быть в формате <user>@<servername>. А PORT можно оставить пустым.

Наиболее полезным и рекомендуемым способом подключения приложения Django к базе данных Azure SQL Database является следующий django-puodbc-azure README для установки пакетов python pyodbc & django-pyodbc-azure и конфигурации settings.py файла Django, как показано ниже:

DATABASES = {
    'default': {
        'ENGINE': 'sql_server.pyodbc',
        'NAME': 'mydb',
        'USER': 'user@myserver',
        'PASSWORD': 'password',
        'HOST': 'myserver.database.windows.net',
        'PORT': '',
        'OPTIONS': {
            'driver': 'ODBC Driver 13 for SQL Server',
        },
    },
}

Кроме того, загрузите правильный драйвер ODBC, совместимый для подключения к Azure SQL Database.

Скачать с здесь

Вернуться на верх