当前位置: 首页 > backend >正文

win10-django项目连接本地mysql

 前提:app已经注册,mysql已经安装好并且创建了数据库

django项目提供的orm框架支持直接在代码里定义类运行相关命令就可自动在mysql里创建表,不用再写sql语句了 

1.下载第三方库 mysqlclient

2.修改app上的mysql连接信息,修改setting.py文件

3.使用django提供的orm框架(不知道具体是什么框架)在数据库里创建表

from django.db import models# Create your models here.
#创建表
class UserInfo(models.Model):name = models.CharField(max_length=32)  #name字段是varhcar类型的32位password = models.CharField(max_length=64) #password字段是varchar类型的64位# age = models.IntegerField() # age是int类型的   #在表里删除age字段size = models.IntegerField()sex = models.CharField(max_length=32)height = models.IntegerField(default= 180)  #在表里添加height字段并设置默认值180weight = models.IntegerField(null=True)   #在表里添加weight字段并设置默认值允许为空hobby = models.CharField(max_length=64, null=True, blank=True)  #是char类型的好像都必须要有长度   #在表里添加hobby字段并设置默认值允许为空code = models.CharField(max_length=32, default= '工号1') #code在表里添加字段并设置默认值为工号1grade = models.CharField(max_length=64)
class Department(models.Model):title = models.CharField(max_length=16)# class Role(models.Model):
#     caption = models.CharField(max_length=16)
# 在app已经注册的情况下,执行 python manage.py makemigrations和python manage.py migrate会默认为数据库创建以下表
# create table app01_userinfo{
# id bigint auto_increment primary key,  django自动生成id自增长主键
# name varchar(32),
# password varchar(64),
# age int
# }

4.一些特殊用法

再创建一张表---在models.py代码里添加类和字段,再依次执行python manage.py makemigrations和python manage.py migrate命令即可

删除一张表----直接在代码里注释表对应的class类,再依次执行python manage.py makemigrations和python manage.py migrate命令即可

删除已创建表的一个字段---直接在代码里注释该class类的这个字段,再依次执行python manage.py makemigrations和python manage.py migrate命令即可

给已创建表添加一个字段---直接在代码对应的calss类里添加该字段,因为涉及到未添加该字段之前表里已经有数据了,所以得给新加的字段设置一个默认值,或者允许为空,否则在执行命令的时候会询问是咋办

 

5.小插曲,在下载mysql第三方库的时候报错不支持5.7版本的数据库,解决办法抄的这里:django.db.utils.NotSupportedError: MySQL 8.0.11 or later is required (found 5.5.28).-CSDN博客

效果如下:

 

 

虽然做笔记了,但是还是不会,先做上笔记吧 

http://www.xdnf.cn/news/5453.html

相关文章:

  • 系统思考:个人与团队成长
  • BGP实验练习1
  • Linux系统编程之消息队列
  • 如何重启pycharm中的项目?
  • 基于STM32单片机设计的教室节能照明系统
  • HTML5表格语法格式详解
  • 用浏览器打开pdf,如何使用划词翻译?
  • MySQL 数据操纵与数据库优化
  • tensorflow 1.x
  • 架构思维:通用架构模式_怀疑下游的设计思路与最佳实践
  • 利用“Flower”实现联邦机器学习的实战指南
  • html body 设置heigth 100%,body内元素设置margin-top出滚动条(margin 重叠问题)
  • 从零到精通:探索 GoFrame 框架的 SSE 优势与实战经验
  • 进程(沉淀中)
  • 运动员技术等级分为国际级运动健将
  • uniapp-商城-52-后台 商家信息(商家信息数据,云对象使用)
  • Java学习手册:服务注册与发现
  • 应急响应基础模拟靶机-security2
  • 咨询规划:精读53页信息化部门如何制定三年战略规划方案【附全文阅读】
  • 660先生与我——高等数学水平自测一、高等数学水平自测二
  • AugmentCode 非常昂贵的新定价
  • 第二十三节:图像金字塔- 图像金字塔应用 (图像融合)
  • 一个.Net开源的关系管理系统
  • 7系列 之 SelectIO 资源
  • Python Cookbook-7.10 在 MySQL 数据库中储存 BLOB
  • Linux网络基础 -- 局域网,广域网,网络协议,网络传输的基本流程,端口号,网络字节序
  • 弹性Reasoning!通过RL训练控制推理预算,提升模型的推理能力和效率!
  • 5000字总结 HTML5 中的音频和视频,关羽标签、属性、API 和最佳实践
  • 实战演练:用 AWS Lambda 和 API Gateway 构建你的第一个 Serverless API
  • uniapp-商城-53-后台 商家信息(更新修改和深浅copy)