Django 连接sql server数据库的方法


Posted in Python onJune 30, 2018

*在此注明,本人使用的是python3.5和Django2.0.4

sql server是微软出的一款闭源的可运行于windows和linux平台上的 关系型数据库 。由于其闭源的特性,所以较少有公司使用,但是比较神奇的是,我所在的公司和我几个朋友所在的公司业务都是以爬虫为主,都是以sql server作为主要的数据库在使用。

一、打包

如果你是使用Django的老手应该知道Django默认不支持sql server;如果你刚开始接触Django,那么你应该知道Django默认支持四种数据库:postgresql、mysql、oracle、sqlite。以上四个数据库不需要直接进行过多的操作,只需要你修改项目中的settings.py文件中的DATABASE就可以了。

但是使用sql server,则需要自己再导入一些东西。

 Django 连接sql server数据库的方法

上图中所涉及到的包是我自己打进去的全部可以已通过"pip install XXX"安装,不需要在Django文件中导入。其中特别需要注意的是django-pyodbc-azure是一定要装的,没有它直接就崩了。

二、代码

将上一步完成以后就只需要修改你的项目中的settings.py文件就可以了。

DATABASES = {
  'default': {
    'NAME': 'screen',
    'ENGINE': 'sql_server.pyodbc',
    'HOST': '127.0.0.1',
    'PORT': '1433',
    'USER': 'user',
    'PASSWORD': 'password',
    'OPTIONS':{
      'driver':'SQL Server Native Client 10.0',
    }
  }
}

在这里要注意几点:

1.'ENGINE'这个键值对是固定写法(好像是要pip install pyodbc以后才能生效,时间有点久,有点记不清了)

2.sql server的默认端口号是1433,但是可能有些公司会改端口号,大家用之前自己最好查一查这个端口是不是被sql server占用了

3.在连接默认数据库的时候很多人都没有写过'OPTIONS'这个东西,我一开始也没有写,结果怎么着都连不上。之后上网查了查,很多人说在odbc里调数据库的东西引擎(公司用的windows做开发系统,勿喷……)。结果加进去还是不行,最后发现是'OPTIONS'没有写,写完之后所有问题都解决了。

这个也是很久之前做的事,刚闲下来着手整理,所以有些东西可能有些遗漏。如果有谁看到这篇文章,发现了一些错误或者遗漏的部分请留言,我会及时改正。谢谢!希望这篇文章能帮助到需要那些帮助的朋友!也希望大家多多支持三水点靠木。

Python 相关文章推荐
python有证书的加密解密实现方法
Nov 19 Python
介绍Python中的__future__模块
Apr 27 Python
django接入新浪微博OAuth的方法
Jun 29 Python
python中OrderedDict的使用方法详解
May 05 Python
Python socket套接字实现C/S模式远程命令执行功能案例
Jul 06 Python
Python读取数据集并消除数据中的空行方法
Jul 12 Python
python bmp转换为jpg 并删除原图的方法
Oct 25 Python
python random从集合中随机选择元素的方法
Jan 23 Python
计算机二级python学习教程(2) python语言基本语法元素
May 16 Python
详解在Python中以绝对路径或者相对路径导入文件的方法
Aug 30 Python
python中class的定义及使用教程
Sep 18 Python
python多线程实现同时执行两个while循环的操作
May 02 Python
python绘制直线的方法
Jun 30 #Python
Python Grid使用和布局详解
Jun 30 #Python
Python 删除连续出现的指定字符的实例
Jun 29 #Python
使用python语言,比较两个字符串是否相同的实例
Jun 29 #Python
python去除文件中重复的行实例
Jun 29 #Python
python获取指定字符串中重复模式最高的字符串方法
Jun 29 #Python
Python 利用内置set函数对字符串和列表进行去重的方法
Jun 29 #Python
You might like
PHP 采集心得技巧
2009/05/15 PHP
PHP+Ajax实现无刷新分页实例详解(附demo源码下载)
2016/04/07 PHP
用javascript实现的仿Flash广告图片轮换效果
2007/04/24 Javascript
js window.event对象详尽解析
2009/02/17 Javascript
图片在浏览器中底部对齐 解决方法之一
2011/11/30 Javascript
JS实现下拉框的动态添加(附效果)
2013/04/03 Javascript
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
浅谈JavaScript函数参数的可修改性问题
2013/12/05 Javascript
单元选择合并变色示例代码
2014/05/26 Javascript
JavaScript实现选择框按比例拖拉缩放的方法
2015/08/04 Javascript
js下将金额数字每三位一逗号分隔
2016/02/19 Javascript
jQuery实现从身份证号中获取出生日期和性别的方法分析
2016/02/25 Javascript
TypeScript Type Innference(类型判断)
2016/03/10 Javascript
总结JavaScript三种数据存储方式之间的区别
2016/05/03 Javascript
以BootStrap Tab为例写一个前端组件
2017/07/25 Javascript
Vue实现根据hash高亮选项卡
2019/05/27 Javascript
如何阻止小程序遮罩层下方图层滚动
2019/09/05 Javascript
基于JS实现简单滑块拼图游戏
2019/10/12 Javascript
JS控制GIF图片的停止与显示
2019/10/24 Javascript
python生成指定长度的随机数密码
2014/01/23 Python
Python科学计算之Pandas详解
2017/01/15 Python
Python实现两个list对应元素相减操作示例
2017/06/09 Python
理论讲解python多进程并发编程
2018/02/09 Python
django框架之cookie/session的使用示例(小结)
2018/10/15 Python
Python线程池模块ThreadPoolExecutor用法分析
2018/12/28 Python
matplotlib制作雷达图报错ValueError的实现
2021/01/05 Python
CSS3制作炫酷的下拉菜单及弹起式选单的实例分享
2016/05/17 HTML / CSS
茵宝(Umbro)英国官方商店:英国足球服装生产商
2016/12/29 全球购物
Muziker英国:中欧最大的音乐家商店
2020/02/05 全球购物
EJB的角色和三个对象
2015/12/31 面试题
电信专业毕业生推荐信
2013/11/18 职场文书
大学班级学风建设方案
2014/05/01 职场文书
体育运动口号
2014/06/09 职场文书
会计岗位说明书
2014/07/29 职场文书
党员批评与自我批评思想汇报
2014/10/08 职场文书
幼儿教师个人总结
2015/02/05 职场文书