Django python 'sql_server.pyodbc' 不是可用的数据库后端

我正在尝试将我的 Django 应用程序连接到 apache 服务器上的 microsoft sql 数据库,但我收到以下错误消息:


django.core.exceptions.ImproperlyConfigured: 'sql_server.pyodbc' isn't an available database backend.

Try using 'django.db.backends.XXX', where XXX is one of:

'mysql', 'oracle', 'postgresql', 'sqlite3'

我已经安装了 django-pyodbc-azure 并且它显示为(pip freeze list)的一部分:


Django==2.1

django-pyodbc==1.1.3

django-pyodbc-azure==2.1.0.0

pyodbc==4.0.25

这是 settings.py 数据库配置:


'default': {

    'ENGINE': 'sql_server.pyodbc',

    'NAME': 'name',

    'USER': 'user',

    'PASSWORD': 'password',

    'HOST': 'host',

    'PORT': '',


    'OPTIONS': {

        'driver': 'ODBC Driver 17 for SQL Server',

    },


},

在 site-packages 文件夹中,它没有显示实际的 django-pyodbc-azure 文件夹,但是当我运行命令 (pip show django-pyodbc-azure) 时,它显示了包位置 (/usr/local/lib/python3.dll)。 5/dist-packages) 这意味着它已成功安装。


所以我不确定是什么问题。


一只甜甜圈
浏览 499回答 2
2回答

沧海一幻觉

我有同样的问题。不知何故,azure-backend 的安装搞砸了我的项目。我删除了 django-pyodbc-azure 和 django-mssql-backend 包,因为它们只支持较旧的 django 版本。之后我从https://github.com/microsoft/mssql-django安装了 mssql 后端pip uninstall django-pyodbc-azurepip uninstall django-mssql-backendpip install mssql-django然后我将数据库配置为使用 'ENGINE': 'mssql'在此之后,我能够使用 Django 3.2连接到我们的 MSSQL 数据库!

天涯尽头无女友

尝试安装 pip install django-pyodbc-azurehttps://pypi.org/project/django-pyodbc-azure/我遇到了同样的问题并且使用它有效。DATABASES = {    'default': {        'ENGINE': 'sql_server.pyodbc',        'NAME': 'Name_database',        'USER': 'User',        'PASSWORD': 'Password',        'HOST': 'IP',        'PORT': '1433',        'OPTIONS': {            'driver': 'ODBC Driver 17 for SQL Server',        },    }}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python