Django框架创建mysql连接与使用示例


Posted in Python onJuly 29, 2019

本文实例讲述了Django框架创建mysql连接与使用。分享给大家供大家参考,具体如下:

对于Django新手,你刚开始可以不使用MySQL数据库,但一定要学会如何配置使用MySQL。Django项目中配置使用MySQL一共分四步: 安装MySQL, 创建数据库名和用户名,通过pip安装第三方库pymysql和修改配置文件settings.py。

第一步 安装MySQL

Windows用户可以直接从MySQL网站上下载相应版本安装。Linux用户可以使用如下命令安装mysql-server。

sudo apt-get install mysql-server

第二步 创建数据库名和用户

打开MySQL终端,输入以下命令先创建数据库和用户,并给创建的用户授权。数据库名字,用户名和密码待会会用到。第一步和第二步非常重要。myapp.*表示授权操作myapp中所有的表。

CREATE DATABASE myapp charset=utf8
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'
GRANT ALL PRIVILEGES ON myapp.* TO 'username'@'localhost' IDENTIFIED BY 'password'

第三步 安装第三方库pymysql

需要借助于第三方库比如pymysql, Django才能直接访问MySQL数据库。进入虚拟环境(venv)后使用

如下命令安装pymysql。

pip install pymysql

然后在项目文件夹的__init__.py中文件中写入如下两行代码:

import pymysql
pymysql.install_as_MySQLdb()

第四步 修改数据库配置文件

修改项目文件夹里的settings.py的文件,添加创建的数据库和用户信息。

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.mysql',  # 数据库引擎
    'NAME': 'myapp',     # 你要存储数据的库名,事先要创建。
    'USER': 'root',     # 数据库用户名
    'PASSWORD': '1234',   # 密码
    'HOST': 'localhost',  # 默认主机
    'PORT': '3306',     # 数据库使用的端口
  }
}

创建一个简单模型,使用如下命令,如果没有出现错误,那么恭喜你已经在Django项目中使用MySQL数据库啦。

python manage.py makemigrations
python manage.py migrate

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

Python 相关文章推荐
Python面向对象特殊成员
Apr 24 Python
Python下实现的RSA加密/解密及签名/验证功能示例
Jul 17 Python
python reduce 函数使用详解
Dec 05 Python
python使用锁访问共享变量实例解析
Feb 08 Python
Python中文件的读取和写入操作
Apr 27 Python
python绘制中国大陆人口热力图
Nov 07 Python
Python解析、提取url关键字的实例详解
Dec 17 Python
Python面向对象类编写细节分析【类,方法,继承,超类,接口等】
Jan 05 Python
Python数据可视化实现正态分布(高斯分布)
Aug 21 Python
Python如何截图保存的三种方法(小结)
Sep 01 Python
如何用python实现一个HTTP连接池
Jan 14 Python
pytorch查看网络参数显存占用量等操作
May 12 Python
python使用minimax算法实现五子棋
Jul 29 #Python
浅析python 中大括号中括号小括号的区分
Jul 29 #Python
Django分页功能的实现代码详解
Jul 29 #Python
微信小程序python用户认证的实现
Jul 29 #Python
Python 堆叠柱状图绘制方法
Jul 29 #Python
Django处理Ajax发送的Get请求代码详解
Jul 29 #Python
Django框架视图函数设计示例
Jul 29 #Python
You might like
Windows下安装PHP单元测试环境PHPUnit图文教程
2014/10/24 PHP
smarty内置函数foreach用法实例
2015/01/22 PHP
PHP实现负载均衡的加权轮询方法分析
2018/08/22 PHP
PHP利用curl发送HTTP请求的实例代码
2020/07/09 PHP
比较简单实用的使用正则三种版本的js去空格处理方法
2007/11/18 Javascript
AngularJS中处理多个promise的方式
2016/02/02 Javascript
vue.js入门教程之绑定class和style样式
2016/09/02 Javascript
Bootstrap modal 多弹窗之叠加显示不出弹窗问题的解决方案
2017/02/23 Javascript
Vue.js项目部署到服务器的详细步骤
2017/07/17 Javascript
详解Angular2学习笔记之Html属性绑定
2018/01/03 Javascript
浅谈vuex中store的命名空间
2019/11/08 Javascript
[05:06]TI4西雅图DOTA2前线报道 海涛密探LGD训练
2014/07/09 DOTA
[03:03]DOTA2 2017国际邀请赛开幕战队入场仪式
2017/08/09 DOTA
[37:02]OG vs INfamous 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
[05:08]DOTA2-DPC中国联赛3月6日Recap集锦
2021/03/11 DOTA
python中while循环语句用法简单实例
2015/05/07 Python
Python实现简单拆分PDF文件的方法
2015/07/30 Python
python杀死一个线程的方法
2015/09/06 Python
Python入门_浅谈for循环、while循环
2017/05/16 Python
对python GUI实现完美进度条的示例详解
2018/12/13 Python
python random从集合中随机选择元素的方法
2019/01/23 Python
Python:slice与indices的用法
2019/11/25 Python
基于Python和PyYAML读取yaml配置文件数据
2020/01/13 Python
python爬虫开发之selenium模块详细使用方法与实例全解
2020/03/09 Python
Keras: model实现固定部分layer,训练部分layer操作
2020/06/28 Python
python爬虫数据保存到mongoDB的实例方法
2020/07/28 Python
Python 操作 MySQL数据库
2020/09/18 Python
美国领先的个性化礼品商城:Personalization Mall
2019/07/27 全球购物
如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗
2012/02/15 面试题
计算机通信工程专业毕业生推荐信
2013/12/24 职场文书
甜点店创业计划书
2014/01/27 职场文书
电大会计学自我鉴定
2014/02/06 职场文书
关于保护环境的标语
2014/06/09 职场文书
介绍信的写法
2015/01/31 职场文书
机器人总动员观后感
2015/06/09 职场文书
vue使用echarts实现折线图
2022/03/21 Vue.js