• 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 提供程序: 由于目标计算机积极拒绝,无法连接。 (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.右击我的电脑选择管理
    在这里插入图片描述
    2.点击服务和应用程序下的SQL Server配置管理器,然后点击图片中所示位置
    在这里插入图片描述
    3.双击TCP/IP,出现如下画面
    在这里插入图片描述
    下拉到最后位置,如图片位置填写上1433,保存即可,然后再运行Django,进行数据库迁移即可。
    在这里插入图片描述

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

  • 相关阅读:
    Django与forms组件校验源码
    局部钩子和和全局钩子
    Form组件参数配置
    Form渲染错误信息
    Django与分页器
    Django与from组件
    uiautomatorview 提示:no android devies were detected by adb
    Flutter 应用入门:包管理
    Flutter 应用入门:路由管理
    Flutter 应用入门:计数器
  • 原文地址:https://www.cnblogs.com/daqi-work/p/11214165.html
Copyright © 2020-2023  润新知