前言

Django对各种数据库提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。本篇以mysql为例简单介绍django连接mysql进行数据操作

Django连mysql需要安装驱动mysqlclient

mysqlclient安装

先要安装数据库驱动mysqlclient,使用pip安装就行

pip install mysqlclient

 django配置数据库

settings.py文件中找到DATABASES配置项,django默认连接sqllite。ENGINE:是指连接数据库驱动的名称,有以下几种情况:

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

  • django.db.backends.postgresql 连接PostgreSQL
  • django.db.backends.mysql  连接mysql
  • django.db.bacckends.sqlite3  连接sqlite
  • django.db.backends.oracle  连接oracle

这里我们连接mysql需要账户密码,也就是之前安装mysql的root用户名,和自己设置的密码,NAME是数据库的名称(数据库名称可随意命名,如,django1需要提前新建好该数据库);

注意:Django2.1不再支持MySQL5.5,必须5.6版本以上

连接配置如下:

DATABASES = {'default': {'ENGINE':'django.db.backends.mysql','NAME':'django1','USER':'root','PASSWORD':'123456','HOST':'localhost','PORT':'3306',# 'ENGINE': 'django.db.backends.sqlite3',# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),}
}

 创建表,同步到mysql

类名代表了数据库表名,且继承了models.Model,类里面的字段代表数据表中的字段(name),数据类型则有CharField(相当于varchar)、DateField(相当于datetime),max_length参数限定长度。

#models.py
from django.db import models# Create your models here.
class Django1(models.Model):name = models.CharField(max_length=20)

先创建表结构,在数据库里面新建一些表;(备注:第一次执行下面的命令,无xjyn...的那一行,删除数据库,再执行一次,显示改行)

python manage.py migrate

打开数据库,会发现多了一些表名称;xjyn_django1就是上一步新建的表;

接着让Django知道我们在我们的模型有一些变更;

python manage.py makemigrations xjyn

再创建xjyn这个app应用的表结构

python manage.py migrate xjyn 

操作数据库

在settings.py同一目录新建一个dbtest.py文件

# coding:utf-8
from django.http import HttpResponse
from xjyn.models import Django1#数据库操作
def dbtest(requst):test=Django1(name="hui")test.save()return HttpResponse("数据库xjyn_django1添加name成功!")

urls.py配置访问地址

#helloworld/helloworld/urls.py
from django.conf.urls import url
from django.urls import re_path,path
from . import dbtesturlpatterns=[url("^test/$",dbtest.dbtest),
]

浏览器打开:http://127.0.0.1:8000/test/,访问一次,数据库里面就会新增一条数据;

查看数据库xjyn_django1会新增数据;

python测试开发django(8)--django连接mysql相关推荐

  1. 可爱的python测试开发库(python测试开发工具库汇总)

    2019独角兽企业重金招聘Python工程师标准>>> 欢迎转载,转载请注明来源: github地址 谢谢点赞 本文地址 Python测试开发库 参考资料 https://githu ...

  2. python测试开发自学教程-2019第一期《python测试开发》课程,10月13号开学

    2019第一期<python测试开发>课程,10月13号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:10月13号-12月8号,每周六.周日晚上20: ...

  3. python 测试开发请关注这个新框架

    如果你之前有接触 python 测试开发,那你应该会听过 django 或者 flask. 但是最近一个新的框架出现在人们的视野中,短短 1 年在 GitHub 上就收集了 20000+ star, ...

  4. Python测试开发django5.urls.py参数name与a标签的引用

    上一篇,我们学习了Python测试开发django5.templates模板变量传参 如果我们有2个页面home.html和demo.html,两个页面是独立的没有关系的,现在需要从home.html ...

  5. Python测试开发django5.templates模板变量传参

    上一篇,我们学习了Python测试开发django4.templates模板配置 templates模板中html文件是一个静态页面,写四的,如果有时我们想动态的传入一些不同的参数,想实现在一个固定的 ...

  6. Python测试开发django4.templates模板配置

    [上一篇]我们讲了Python测试开发django3.视图和URL配置 今天详细介绍下 Django 模板的应用,模板是一个文本,用于分离文档的表现形式和内容. 我们已经知道创建项目用django-a ...

  7. 可爱的python测试开发库及项目(python测试开发工具库汇总)

    转载: https://www.jianshu.com/p/ea6f7fb69501 可爱的python测试开发库及项目(python测试开发工具库汇总) github地址 相关书籍下载 Python ...

  8. python global用法_【python测试开发栈】python基础语法大盘点

    周边很多同学在用python,但是偶尔会发现有人对python的基础语法还不是特别了解,所以帮大家梳理了python的基础语法(文中的介绍以python3为例).如果你已然是python大牛,可以跳过 ...

  9. Python 测试开发从入门到高手成长之路

    > 文末领取测试开发进阶指南和福利! 在" **质量第一,效率为王** "的移动互联网和大数据时代,互联网 IT 技术团队为了应对产品快速迭代要求,就必须具备持续交付的能力. ...

  10. 《Python测试开发技术栈—巴哥职场进化记》—初来乍到,请多关照

    上文<巴哥职场进化记-Python测试开发技术栈>开篇讲到巴哥毕业初到深圳,见到了来自五湖四海的室友.一番畅聊之后,抱着对未来职场生活的期待,大家都进入了梦乡.今天我们来看看巴哥第一天上班 ...

最新文章

  1. 月薪50K的机器学习工程师,需要具备哪些条件?
  2. vh与vw的使用事项
  3. php加密 dll扩展,PHP的openssl加密扩展使用小结(推荐)
  4. 【“探探”为例】手把手教你用最少的代码实现各种“机器人”
  5. Java设计模式(十八):享元设计模式
  6. bzoj4316: 小C的独立集
  7. 338. 比特位计数 golang
  8. poj1284:欧拉函数+原根
  9. centos一键安装redmine
  10. Spring Boot注册Servlet三大组建(Servlet、Filter、Listener)
  11. Linux内存管理(一)——从硬件角度看内存管理
  12. 西安科技大学计算机学院保研,独臂姑娘,好样的!
  13. js时间格式化 YYYY/MM/DD HH:MM:SSS
  14. 安装opencv_contrib(ubuntu16.0)
  15. 2021华为软挑赛题_思路分析——实时更新,做多少更多少(六)
  16. Windows系统内置彩蛋
  17. 四级网络工程师和四级信息安全工程师考试须知与学习方法
  18. maya 的bifrost_maya2020的Bifrost流体3D特效的使用方法
  19. performSelector延时调用导致的内存泄露
  20. TCP三次握手、四次握手过程,以及原因分析

热门文章

  1. android8.1系统静默安装问题(无须手动点击)
  2. mysql如何返回上一步_月亮上没有火箭和发射塔,嫦娥五号完成任务后,是如何起飞返回的...
  3. eclipse调试错误No source available for _dl_debug_state() 解决方案
  4. 英语发音规则---I字母
  5. dev-tool安装方法(手动安装版)
  6. 基于K8S的OpenStack部署实践
  7. 2022年最新AlphaPose环境配置(Linux+GPU)
  8. 2021陇剑杯部分wp
  9. webpack : 无法加载文件 C:\Users\骚恒\AppData\Roaming\npm\webpack.ps1,因为在此系统上禁止运行脚本。
  10. MatConvNet的CPU和GPU编译配置