windows下使用django连接sql server(最能用,含概所有错误所需包)

 
 

版本:

python : Python 3.6.8

django:django 2.2.3

sql server: sql server 2017

系统:window10

前言:很多博客少pypiwin32、django-mssql-backend,最后折腾发现,需要这两个,安装完就正常了

首先要打开sql server的IP访问

windows下使用django连接sql server(最能用,含概所有错误所需包)_第1张图片
   windows下使用django连接sql server(最能用,含概所有错误所需包)_第2张图片  
 

双击TCP/IP,查看端口是不是1433

windows下使用django连接sql server(最能用,含概所有错误所需包)_第3张图片
 
完成以上操作,即可接下操作

1、安装必要django环境

pip install django-crontab django-mssql django-pyodbc django-pyodbc-azure django-pytds django-sqlserver pypiwin32 

2、数据库驱动程序检查

  • 一般第三方连接数据库应用程序都自带的有,这里使用  Navicat Premium 示例,软件安装略
  • 驱动查看路径默认为  C:\Windows\SysWOW64\odbcad32.exe
  • 打开ODBC数据源管理程序,可以看到所有安装的ODBC驱动,找到Navicat Client的名称,用于填写到Django的setting中作为指定的默认驱动
 
安装 Navicat Premium 后去对应目录查看是否有ODBC驱动
windows下使用django连接sql server(最能用,含概所有错误所需包)_第4张图片
 
 

3、Django 的 setting 中配置数据库连接信息

 
需要注意的是 OPTIONS默认数据库连接驱动设置的驱动要和上图ODBC中驱动保持一致!
很多人使用mysql多了 端口很容易写成3306,SQL Server端口默认1433
 
DATABASES = {
    'default': {
        'ENGINE': 'sql_server.pyodbc', # odbc连接固定写法
        'NAME': 'MySQLserver', # 自定义数据库连接名
        'USER': 'sa', # 数据库连接账户
        'PASSWORD': '123456!@#', # 数据库连接密码
        'HOST': '127.0.0.1', # 数据库服务地址
        'PORT': '1433', # 数据库连接端口
        'OPTIONS':{
            'driver':'SQL Server Native Client 11.0', # ODBC连接应用驱动
            'MARS_Connection': True,
        }
    }
}

# set this to False if you want to turn off pyodbc's connection pooling
DATABASE_CONNECTION_POOLING = False

 

 
 很多博客会少了: DATABASE_CONNECTION_POOLING = False
但在django-pyodbc-azure包中的示例如图:    所以要加上DATABASE_CONNECTION_POOLING = False
windows下使用django连接sql server(最能用,含概所有错误所需包)_第5张图片

基它使用跟mysql一样

然后运行python manage.py runserver,能正常运行

如果报错,请往下看

4、添加    django-mssql-backend

安装命令:pip install django-mssql-backend

再次运行项目(python manage.py runserver

如果报错误:No translation files found for default language zh-cn.

修改配置为:LANGUAGE_CODE = 'zh-hans'

 

 

 

原创不易,欢迎打赏,持续创作

你可能感兴趣的:(windows下使用django连接sql server(最能用,含概所有错误所需包))