zoukankan      html  css  js  c++  java
  • python测试开发django-2 链接mysql

    数据库链接,上篇文章中简单对sqlite3进行了操作使用 (上篇:https://www.cnblogs.com/wfwt180801-/p/12044332.html

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

    这里使用的mysql 版本为8.0.11 安装参考 https://www.cnblogs.com/wfwt180801-/p/10557292.html

    PyMySQL 安装

    pip install -i https://pypi.douban.com/simple PyMySQL 我这里使用了豆瓣源安装

     

    项目目录仅供参考

    django 数据库配置

    settings.py 文件中找到 DATABASES 配置项, django默认连接sqllite
    我们连接mysql需要账户密码,也就是之前安装mysql的root用户名,和自己设置的密码,NAME是数据库的名称,连接配置如下:
    NAME:'DjangoModel' 对应库名
    需要创建或指定现有库名

    1.创建 djangoModel库
    -create database DjangoModel charset=utf8;
    -添加mysql驱动
    -DAtabase —— + ——Data Source——mysql
    -添加 库名,mysql账号密码,进行测试,确定添加,添加成功


    -项目目录下初始化文件中模拟mysqldb ,这里使用pymysql
    -需要安装pymysql
    -pip install pymysql 我这的安装版本为Version: 0.9.3

      



    -项目初始化文件路径...DjangoModel\__init__.py文件
    -import pymysql
    -pymysql.install_as_MySQLdb()#

     

    -执行迁移
    -python manage.py migrate
    至此打开mysql试图查看就可看到迁移过去的表数据

    新建表,定义数据模型 ...DjangoModelAppmodels.py 中代码如下

     

    #生成迁移文件、执行迁移生成数据库表
    -python manage.py makemigrations
    -生成的迁移文件在应用目录下migrations中 (...DjangoModelAppmigrations)
    -生成迁移文件报错
    -生成迁移文件出错 No changes detected,说明在根目录中settings中没有注册子应用
    E:web_djohellodjango>python manage.py makemigrations
    No changes detected
            -如何注册?

    -执行迁移
    -python manage.py migrate
    迁移后查看mysql视图中看到我们新建的表People

     

     models 使用了orm技术
        -object Relational Mapping 对象关系映射
        -将业务逻辑进行了一个解耦合
        -object.save()保存
        -object.delete()删除

    使用封装的模板类创建点数据

    ...DjangoModelAppurls.py

    ...DjangoModelAppviews.py 文件中代码如下

    urls.py

    from django.conf.urls import url
    from App import views
    urlpatterns =[
    url(r'^addpeople/',views.add_peole),
    ]

    views.py

    from django.http import HttpResponse
    from django.shortcuts import render

    # Create your views here.
    from App.models import Person


    def add_peole(request):
    for i in range(15):
    people =Person()
    flag=random.randrange(100)
    people.p_naem = "Tom%d" % i
    people.p_age=flag
    people.p_sex=flag % 2
    people.save()
    return HttpResponse('批量创建成功')

    启动项目 python manage.py runserver
    浏览器访问 http://127.0.0.1:8000/App/addpeople/  此时我可以看到给出的提示信息,批量创建成功

    那么是否真的创建成功了呢?

    打开mysql视图查看是否有数据,如果要是没有数据,点击刷新或者cmd/nvcat下切换库中查看是否有数据了



     
     

     

     

     

     

     

     

     

     



  • 相关阅读:
    day02
    Hive_分区排序(Distribute By)
    flink添加水位线
    SparkSQL读写JDBC
    spark累加器及UDTF
    datax同步json中文乱码问题
    mysql踩过的坑
    spark算子
    spark分区计算方式
    git操作
  • 原文地址:https://www.cnblogs.com/wfwt180801-/p/12046574.html
Copyright © 2011-2022 走看看