我尝试安装 django_pyodbc
但是当我尝试 make migrations 时出现错误:
django.core.exceptions.ImproperlyConfigured: Django 2.1 is not supported.
我的settings.py:
'Test_DB': {
'ENGINE': 'django_pyodbc',
'NAME': 'TEST',
'HOST': '127.0.0.1',
'USER': 'sa',
'PASSWORD': '123456',
'OPTIONS': {
'driver': 'ODBC Driver 12 for SQL Server',
},
},
当我尝试安装 django-pyodbc-azure 时,出现了另一个错误:
尝试使用“django.db.backends.XXX”,其中 XXX 是以下之一:
'mysql'、'oracle'、'postgresql'、'sqlite3'
我的settings.py:
'Test_DB': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'TEST',
'HOST': '127.0.0.1',
'USER': 'sa',
'PASSWORD': '123456',
'OPTIONS': {
'driver': 'ODBC Driver 12 for SQL Server',
},
},
那么我应该怎么做才能连接SQL Server 2012?
最佳答案
我确实搜索了这个问题很长时间。
真的很生气,没有人真正说出细节,这就是为什么我想写下来帮助那些即将面临这个问题的人。
我发现我应该执行以下操作,以便我可以在 Django 中运行 pyodbc。
1.首先安装“ODBC Driver 11 for SQL Server & Install pyodbc”
2.settings.py:
DATABASES = {
'MSSQL':
{
'ENGINE': 'sql_server.pyodbc',
'NAME': 'DB_NAME',
'USER': 'USER',
'PASSWORD': 'PWD',
'HOST': 'IP',
'PORT': '1433',
'OPTIONS':{
'driver': 'ODBC Driver 11 for SQL Server',
},
}
}
3.views.py:
import pyodbc
from django.conf import settings
connection = pyodbc.connect(
"Driver={" + settings.DATABASES['MSSQL']['OPTIONS']['driver'] + "};"
"Server=" + settings.DATABASES['MSSQL']['HOST'] + ";"
"Database=" + settings.DATABASES['MSSQL']['NAME'] + ";"
"UID=" + settings.DATABASES['MSSQL']['USER'] + ";"
"PWD=" + settings.DATABASES['MSSQL']['PASSWORD'] + ";"
"Trusted_Connection=no;"
)
cursor = self.connection.cursor()
query = """SELECT * FROM DB_NAME;"""
cursor.execute(query)
rows = cursor.fetchall()
columns = [column[0] for column in cursor.description]
data = []
关于sql-server - Django 连接到 SQL Server - django/sql_server - pyodbc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60406889/