我是Django的新手,目前正尝试使用python 3.6.4和Django2.1.2与SQL Server连接我的项目,我尝试了多个驱动程序连接器 (libraries installed)
> (irisha) C:\Users\MOHMMED-PC\Desktop\SOUS BUREAU\WEB\irisha\src>pip freeze
adodbapi==2.6.0.7
Django==2.1.2
django-mssql==1.8
django-pyodbc==1.1.3
django-pyodbc-azure==2.1.0.0
django-sqlserver==1.11
pyodbc==4.0.24
pypyodbc==1.3.4
python-tds==1.9.1
pytz==2018.6
six==1.11.0
但没有结果,我使用的最后一个驱动器连接器是pyodbc: Settings,
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'iristest',
'USER': 'sa',
'PASSWORD': '1234',
'HOST': '127.0.0.1\test',
'PORT': '1433',
},}
但出现了一些错误:errors
django.db.utils.InterfaceError :(“ IM002”,“ [IM002] [Microsoft] [ODBC驱动程序管理器]数据源名称未找到且未指定默认驱动程序(0)(SQLDriverConnect)”)
感谢您帮助我找到解决方案。
答案 0 :(得分:0)
“如果您使用的是SQLite以外的数据库,请确保此时已创建数据库。请在数据库的交互式提示中使用“ CREATE DATABASE database_name;”执行此操作。”
答案 1 :(得分:0)
最后,我找到了解决方案,问题出在Django和python之间的兼容性上,当我将pyodbc与Python 3.4.4和Django == 1.8.19一起使用时,它起作用了,这就是我所做的:
-安装Python 3.4.4-2015-12-21
cmd
pip安装virtualenv测试
virtualenv测试
。\ Scripts \ activate
pip install Django == 1.8.19 pip install django-mssql
点安装https://www.lfd.uci.edu/~gohlke/pythonlibs/#pywin32
django-admin startproject myproject。
修改设置数据库
> DATABASES = { 'default': {
> 'ENGINE': 'sqlserver_ado',
> 'HOST': 'MOHAMMED-PC\SQL2014', # Replace with host name where you have MSSQL server running
> 'NAME': 'test', # Replace with name of the database on the MSSQL server
> 'USER': 'sa', # Replace with user name
> 'PASSWORD': '1234', # Replace with password }, }