簡體   English   中英

如何使用 Django 連接到 MsSQL 服務器

[英]How to connect to MsSQL server with Django

我正在努力使用 Django 連接到我的本地 MsSQL 服務器。 它說當我發出命令“makemigrations”時:

django.core.exceptions.ImproperlyConfigured: 'sqlserver_ado' 不是可用的數據庫后端。 嘗試使用“django.db.backends.XXX”,其中 XXX 是以下之一:“mysql”、“oracle”、“postgresql”、“sqlite3”

我的設置:

DATABASES = {
'default': {
    'NAME': 'TestDB',
    'ENGINE': 'sqlserver_ado',
    'HOST': 'STEPAN',
    'USER': '',
    'PASSWORD': '',
}

}

在這個解決方案中: 設置 django-mssql 問題我發現我的“sqlserver_ado”應該在同一個文件夾“site-packages”中,它是(Python IDLE shell):

>>> import sqlserver_ado
>>> sqlserver_ado
<module 'sqlserver_ado' from 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python36_64\\lib\\site-packages\\sqlserver_ado\\__init__.py'>
>>> import django
>>> django
<module 'django' from 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python36_64\\lib\\site-packages\\django\\__init__.py'>

我安裝了 PyWin32 並且在 IDLE 中導入很好(即使路徑很好),但我仍然收到此錯誤消息。

任何想法或建議?

規格:Win10、Python 3.6、Visual Studio 2017、django-mssql 1.8、django 2.0.6、MsSQL(開發人員)和這個數據庫存在(使用flask我沒有問題連接到我的本地服務器[只是為了比較我的連接字符串在另一個燒瓶項目中:

SQLALCHEMY_DATABASE_URI = "mssql+pyodbc:///?odbc_connect={}".format(urllib.parse.quote_plus(
    "DRIVER={SQL Server};Server=STEPAN;Database=TestDB;Trusted_Connection=yes;"))

]),項目是由 Visual Studio 自動創建的,該命令引發此錯誤:

python manage.py makemigrations

回復舊帖子,但是 - 以防這對其他人有幫助:

我發現,在某些情況下,您還需要指定 SQL Server 驅動程序版本:

DATABASES = {
    'default': {
        'ENGINE': 'sql_server.pyodbc',
        'NAME': '<dbNAME_HERE',
        'HOST': '<SERVERNAME_HERE>\SQLEXPRESS',
        
        'OPTIONS': {
            'driver': 'ODBC Driver 17 for SQL Server',
        }        
    }
}

這是針對 DJANGO 項目的,但問題可能類似...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM