Python Django切换MySQL数据库实例详解


Posted in Python onJuly 16, 2019

准备

软件 版本
Django 2.1.3
Python 3.7.1

默认使用的是sqlite3

DATABASES = {
   'default': {
     'ENGINE': 'django.db.backends.sqlite3',
     'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
   }
}

切换为MySql:

# settings.py
DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'book',
    'USER': 'root',
    'PASSWORD': '123456',
    'HOST': '127.0.0.1',
    'POST': '3306',
  }
}

实现步骤

我们使用Django 来操作MySQL,实际上底层还是通过Python来操作的。因此我们想要用Django来操作MySQL,首先还是需要安装一个驱动程序。在Python3中,驱动程序有多种选择。比如有pymysql以及mysqlclient等。

常见的Mysql驱动介绍:

  • MySQL-python:也就是MySQLdb。是对C语言操作MySQL数据库的一个简单封装。遵循了Python DB API v2。但是只支持Python2,目前还不支持Python3。
  • mysqlclient:是MySQL-python的另外一个分支。支持Python3并且修复了一些bug。
  • pymysql:纯Python实现的一个驱动。因为是纯Python编写的,因此执行效率不如MySQL-python。并且也因为是纯Python编写的,因此可以和Python代码无缝衔接。
  • MySQL Connector/Python:MySQL官方推出的使用纯Python连接MySQL的驱动。因为是纯Python开发的。效率不高。

mysqlclient安装

基于目前的环境以及版本来说,直接运行 pip install mysqlclient 是会报错的,具体错误,自己执行以下就知道了。

解决办法:

去 https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient 下载指定文件,我用的是python3.7,win环境是64位,所以下载了mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl。

然后执行:

pip3 install mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl

如果出现以下说明安装成功:

Installing collected packages: mysqlclient
Successfully installed mysqlclient-1.3.13

迁移数据库

Django中通过以下命令来迁移数据库,在每次创建Model时,执行该命令,在数据库中生成对应的表:

python manage.py makemigrations
python manage.py migrate

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
phpsir 开发 一个检测百度关键字网站排名的python 程序
Sep 17 Python
Python中操作MySQL入门实例
Feb 08 Python
Python爬取附近餐馆信息代码示例
Dec 09 Python
Python网络编程之TCP与UDP协议套接字用法示例
Feb 02 Python
python中的内置函数max()和min()及mas()函数的高级用法
Mar 29 Python
Python实现字典(dict)的迭代操作示例
Jun 05 Python
selenium python 实现基本自动化测试的示例代码
Feb 25 Python
Python实现TCP通信的示例代码
Sep 09 Python
python使用matplotlib绘制雷达图
Oct 18 Python
PyCharm使用Docker镜像搭建Python开发环境
Dec 26 Python
Pytorch实验常用代码段汇总
Nov 19 Python
PyCharm常用配置和常用插件(小结)
Feb 06 Python
Python二维码生成识别实例详解
Jul 16 #Python
python3.6+selenium实现操作Frame中的页面元素
Jul 16 #Python
Python Web版语音合成实例详解
Jul 16 #Python
windows下python虚拟环境virtualenv安装和使用详解
Jul 16 #Python
Pandas中DataFrame的分组/分割/合并的实现
Jul 16 #Python
Python的matplotlib绘图如何修改背景颜色的实现
Jul 16 #Python
python调用其他文件函数或类的示例
Jul 16 #Python
You might like
如何使用PHP往windows中添加用户
2006/12/06 PHP
php修改时间格式的代码
2011/05/29 PHP
Codeigniter实现发送带附件的邮件
2015/03/19 PHP
PHP中file_exists使用中遇到的问题小结
2016/04/05 PHP
php使用curl获取header检测开启GZip压缩的方法
2018/08/15 PHP
javascript实现的动态添加表单元素input,button等(appendChild)
2007/11/24 Javascript
Javascript事件热键兼容ie|firefox
2010/12/30 Javascript
判断对象是否Window的实现代码
2012/01/10 Javascript
JS中getYear()和getFullYear()区别分析
2014/07/04 Javascript
javascript十六进制及二进制转化的方法
2015/05/06 Javascript
文字垂直滚动之javascript代码
2015/07/29 Javascript
全面解析node 表单的图片上传
2016/11/21 Javascript
详解Vue 方法与事件处理器
2017/06/20 Javascript
微信小程序中实现手指缩放图片的示例代码
2018/03/13 Javascript
前端防止用户重复提交js实现代码示例
2018/09/07 Javascript
vue二级菜单导航点击选中事件的方法
2018/09/12 Javascript
node.js中ws模块创建服务端和客户端,网页WebSocket客户端
2019/03/06 Javascript
Python实现远程调用MetaSploit的方法
2014/08/22 Python
解析Python中while true的使用
2015/10/13 Python
给你选择Python语言实现机器学习算法的三大理由
2017/11/15 Python
python re正则匹配网页中图片url地址的方法
2018/12/20 Python
pycharm配置当鼠标悬停时快速提示方法参数
2019/07/31 Python
Python 3.6打包成EXE可执行程序的实现
2019/10/18 Python
基于Numba提高python运行效率过程解析
2020/03/02 Python
基于matplotlib xticks用法详解
2020/04/16 Python
英国家居用品和家居装饰品购物网站:Cox & Cox
2019/08/25 全球购物
荷兰最大的多品牌男装连锁店:Adam Brandstore
2019/12/31 全球购物
Feelunique中文官网:欧洲最大化妆品零售电商
2020/07/10 全球购物
在浏览器端如何得到服务器端响应的XML数据
2012/11/24 面试题
毕业求职自荐信格式是什么
2013/11/19 职场文书
自荐信格式写作方法有哪些呢
2013/11/20 职场文书
优秀导游先进事迹材料
2014/01/25 职场文书
主题班会开场白
2015/06/01 职场文书
贷款担保书范本
2015/09/22 职场文书
html实现随机点名器的示例代码
2021/04/02 Javascript
Python集合set()使用的方法详解
2022/03/18 Python