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对html代码进行escape编码的方法
May 04 Python
python excel使用xlutils类库实现追加写功能的方法
May 02 Python
关于python写入文件自动换行的问题
Jun 23 Python
tensorflow 打印内存中的变量方法
Jul 30 Python
详解pandas库pd.read_excel操作读取excel文件参数整理与实例
Feb 17 Python
python儿童学游戏编程知识点总结
Jun 03 Python
详解用python计算阶乘的几种方法
Aug 14 Python
Python流程控制 while循环实现解析
Sep 02 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
Jan 10 Python
谈一谈数组拼接tf.concat()和np.concatenate()的区别
Feb 07 Python
python如何操作mysql
Aug 17 Python
用Python制作灯光秀短视频的思路详解
Apr 13 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
第十二节 类的自动加载 [12]
2006/10/09 PHP
php下过滤html代码的函数 提高程序安全性
2010/03/02 PHP
php中$_POST与php://input的区别实例分析
2015/01/07 PHP
PHP如何开启Opcache功能提升程序处理效率
2020/04/27 PHP
使用js判断当前时区TimeZone是否是夏令时
2014/02/23 Javascript
jQuery实现多按钮单击变色
2014/11/27 Javascript
jQuery插件Elastislide实现响应式的焦点图无缝滚动切换特效
2015/04/12 Javascript
js实现选中页面文字将其分享到新浪微博
2015/11/05 Javascript
vue-devtools的安装和使用步骤详解
2019/10/17 Javascript
OpenLayer3自定义测量控件MeasureTool
2020/09/28 Javascript
[06:44]2014DOTA2国际邀请赛-钥匙体育馆开战 开幕式振奋人心
2014/07/19 DOTA
[15:39]教你分分钟做大人:龙骑士
2014/10/30 DOTA
python实现简单socket程序在两台电脑之间传输消息的方法
2015/03/13 Python
django创建自定义模板处理器的实例详解
2017/08/14 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
2018/01/30 Python
Python爬虫信息输入及页面的切换方法
2018/05/11 Python
python实现多人聊天室
2020/03/31 Python
python中正则表达式 re.findall 用法
2018/10/23 Python
python自定义时钟类、定时任务类
2021/02/22 Python
Django 拆分model和view的实现方法
2019/08/16 Python
应用OpenCV和Python进行SIFT算法的实现详解
2019/08/21 Python
浅析python中while循环和for循环
2019/11/19 Python
Python读取csv文件实例解析
2019/12/30 Python
Python如何定义接口和抽象类
2020/07/28 Python
Python如何将装饰器定义为类
2020/07/30 Python
美国综合购物商城:UnbeatableSale.com
2018/11/28 全球购物
质检部岗位职责
2013/11/11 职场文书
小学语文教学反思
2014/02/10 职场文书
应届电子商务毕业自荐书范文
2014/02/11 职场文书
个人查摆问题整改措施
2014/10/04 职场文书
抗洪救灾感谢信
2015/01/22 职场文书
研讨会致辞
2015/07/31 职场文书
干部作风纪律整顿心得体会
2016/01/23 职场文书
Python使用Kubernetes API访问集群
2021/05/30 Python
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android
javascript实现计算器功能详解流程
2021/11/01 Javascript