天天看点

Django对接SQL Server服务

1.环境描述

环境:Win7 + Django2.1.10 + SQL Server 2014 + Python3.6 + PyCharm 2017.2.3 x64

2.安装插件

由于Django默认是不支持SQL Server的,所以需要安装第三方插件来启动SQL Server

插件为: pyodbc (4.0.26) 和 django-pyodbc-azure (2.1.0.0)

3.配置settings.py文件

// An highlighted block

DATABASES = {

'default': {

'ENGINE': 'sql_server.pyodbc',

'NAME': 'demo', #需要连接的数据库名字

'USER': '***', #连接数据库的用户名

'PASSWORD': '***', #对应的用户密码

'HOST': 'localhost', # IP 地址

'PORT': '1433', #端口号

'OPTIONS': {

'driver': 'SQL Server Native Client 11.0', # 驱动

'MARS_Connection': True,

},

}

}

4.可能会出现的错误

django.db.utils.OperationalError: ('08001', '[08001] [Microsoft][SQL Server Native Client 11.0]TCP 提供程序: 由于目标计算机积极拒绝,无法连接。\r\n (10061) (SQLDriverConnect); [08001] [Microsoft][SQL Server Native Client 11.0]登录超时已过期 (0); [08001] [Microsoft][SQL Server Native Client 11.0]无效的连接字符串属性 (0); [08001] [Microsoft][SQL Server Native Client 11.0]与 SQL Server 建立连接时发生了与网络相关的或特定于实例的错误。找不到或无法访问服务器。请检查实例名称是否正确以及 SQL Server 是否配置为允许远程连接。有关详细信息,请参阅 SQL Server 联机丛书。 (10061)')

这是因为SQL Server数据库的默认端口1433并未开启

解决方案:

1.右击我的电脑选择管理

Django对接SQL Server服务

2.点击服务和应用程序下的SQL Server配置管理器,然后点击图片中所示位置

Django对接SQL Server服务

3.双击TCP/IP,出现如下画面

Django对接SQL Server服务

下拉到最后位置,如图片位置填写上1433,保存即可,然后再运行Django,进行数据库迁移即可。

Django对接SQL Server服务

笔者的问题是这样解决的,希望能给大家一点帮助,如果大家有其他的问题,欢迎留言。

转载于:https://www.cnblogs.com/daqi-work/p/11214165.html