[英]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.