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

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博客

效果如下:

 

 

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

相关文章:

  • 南京邮电大学金工实习答案
  • HVV蓝队初级面试总结
  • Linux系列(3)----用户和用户组管理、系统管理
  • 差分与位移算子
  • 【C语言干货】二维数组传参本质
  • 简单的强化学习举例
  • Java定时任务
  • 快速搭建一个vue前端工程
  • Multisim14使用教程详尽版--(2025最新版)
  • 关于解决MySQL的常见问题
  • 数字孪生概念
  • 1247. 后缀表达式
  • Nginx yum 安装
  • 小刚说C语言刷题—1058 - 求出100至999范围内的所有水仙花数
  • 大数据从专家到小白
  • MySQL视图深度解析:从基础语法到高级应用
  • 4.5 ospath模块
  • ROS 2 FishBot PID控制电机代码
  • MySQL数据库常见面试题之三大范式
  • 深入理解 Java 适配器模式:架构设计中的接口转换艺术
  • 打击网络谣言、共建清朗家园,中国互联网联合辟谣平台2025年4月辟谣榜
  • 上海交大计算机学院成立,设多个拔尖人才特色班
  • 马克龙称法英正与乌克兰商议“在乌部署欧洲军队”
  • 5.19中国旅游日,上海56家景区景点限时门票半价
  • 巴防空系统击落印度无人机,印称巴方违反停火协议
  • 巴军事行动致印度70%电网瘫痪