用户管理第2节课 -- idea 2023.2 创建表

一、懂得

1.1编码格式是防止乱码的,utf-8是完全够的,那几个基本没差别

网址:

【IDEA------连接MySQL数据库,创建库和表】_idea中数据库-CSDN博客

这些是MySQL数据库中的一些术语,可以简单解释如下:

1、columns(列):

指数据库表中的列,也被称为字段。每列定义了表中数据的类型和属性。

2、keys(键):

用于在表中建立索引以加速数据检索的列或列组合。常见类型有主键、唯一键、普通键等。

3、foreign keys(外键):

用于建立两个表之间关系的键。在一个表中,外键指向另一个表中的一个或多个列,它确保了这些列中的值与另一个表的列中的值相匹配。

4、indexes(索引):

用于提高查询效率的数据结构。索引可以建立在一个或多个列上,帮助数据库系统快速地查找和处理数据。

5、checks(检查约束):

用于限制表中某列的取值范围。检查约束可以基于列中的条件表达式或函数,保证表中数据的正确性和完整性。

6、virtual columns(虚拟列):

在MySQL 5.7版本及以上的数据库中,允许用户定义一种特殊的列类型,即虚拟列。虚拟列的值不存储在物理磁盘上,并且由表达式计算得出,可以在查询中使用。

7、virtual foreign keys(虚拟外键):

在MySQL 5.6版本及以上的数据库中,虚拟外键是一种特殊的约束类型,用于建立表与表之间的关系。虚拟外键不需要实际的物理列和索引,而是通过执行类似JOIN的操作在查询过程中计算得出。

二、试试

2.1 所以此处不填,试试

三、

3.1username

方式1:

方式2:

3.2 id -- 主键

3.3 userAccount

3.4 avatarUrl

3.5 gender 性别 tinyint

tinyint

是MySQL数据库中的一种整数数据类型,用于表示小范围的整数值。

它通常用于存储布尔值

(0表示假,1表示真)

后续不用看,此处用不到。

或者

表示具有固定取值范围的枚举类型。

在MySQL中,tinyint类型占用1个字节(8位),可以存储的取值范围是-128到127(有符号)或者0到255(无符号)。可以通过指定有符号或无符号属性来确定其取值范围。

以下是创建一个名为status的tinyint列的示例:

复制代码
CREATE TABLE example (
    id INT,
    status TINYINT
);

在此示例中,列status将存储一个范围在-128到127之间的整数值

3.6 userPassword 【非空】

3.7 phone

3.8 email

3.9 userStatus 用户状态 int 0 - 正常 【非空】

3.10 createTime 创建时间(数据插入时间)datetime

3.11 updateTime 更新时间(数据更新时间)datetime

3.12 isDelete

3.13 userRole

3.14 planetCode 星球编号

四、 理解 go to ddl & 控制台 区别

4.1 go to ddl

4.1.1 代码

复制代码
create table yupi1
(
    username     varchar(256)                       null comment '用户昵称',
    id           bigint auto_increment comment 'id'
        primary key,
    userAccount  varchar(256)                       null comment '账户',
    avatarUrl    varchar(1024)                      null comment '用户头像',
    gender       tinyint                            null comment '性别',
    userPassword varchar(512)                       not null comment '密码',
    phone        varchar(128)                       null comment '电话',
    email        varchar(512)                       null comment '邮箱',
    userStatus   int      default 0                 null comment '状态 : 0--> 正常',
    createTime   datetime default CURRENT_TIMESTAMP null comment '创建时间',
    updateTime   datetime default CURRENT_TIMESTAMP null on update CURRENT_TIMESTAMP,
    isDelete     tinyint  default 0                 not null comment '是否删除',
    userRole     int      default 0                 not null comment '用户角色 0 - 普通用户 1 - 管理员',
    planetCode   varchar(512)                       null comment '星球编号'
);
相关推荐
宸津-代码粉碎机5 分钟前
Spring AI企业级RAG进阶|文档智能分片调优、ES深度整合、接口限流熔断监控生产实战
java·开发语言·人工智能·后端·spring·elasticsearch·oracle
唐青枫6 分钟前
Java MyBatis-Flex 实战指南:从 BaseMapper 到 QueryWrapper 的轻量 ORM 用法
java·mybatis
两年半的个人练习生^_^8 分钟前
JVM进阶系列:彻底理解 Java 内存模型(JMM)
java·开发语言
云烟成雨TD8 小时前
Spring AI Alibaba 1.x 系列【69】Token 用量统计
java·人工智能·spring
JAVA9658 小时前
JAVA面试-并发篇 03-使用synchronized doublecheck实现单例有什么坑
java·单例模式·面试
在繁华处8 小时前
Java从零到熟练(四):面向对象基础
java·开发语言
小江的记录本9 小时前
【JVM虚拟机】堆内存分代模型:年轻代(Eden+Survivor)、老年代、元空间Metaspace(附《思维导图》+《面试高频考点清单》)
java·前端·jvm·后端·python·spring·面试
在繁华处9 小时前
Java从零到熟练(三):流程控制
java·开发语言·python
唐青枫10 小时前
Java Optional 实战指南:优雅处理空值与链式转换
java
一起学开源10 小时前
一文读懂 ReAct 范式:让 AI Agent 真正学会“思考+行动“
java·javascript·react.js·ecmascript·react·alibaba·智能体开发