如何配置数据库设置Django-MSSQL(Windows)?

时间:2018-11-01 13:25:11

标签: python sql-server django python-3.x django-models

我是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)”)

感谢您帮助我找到解决方案。

2 个答案:

答案 0 :(得分:0)

“如果您使用的是SQLite以外的数据库,请确保此时已创建数据库。请在数据库的交互式提示中使用“ CREATE DATABASE database_name;”执行此操作。”

More about database setup

答案 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    }, }