【JAVADAY21-MySQL】MySQL完结篇

CRUD程序员

  • 创建数据库、删除数据库、创建表、删除表
  • 创建约束
  • 创建表之后更改表的结构
  • CUD
    • C
    • U
    • D
  • 事务
  • 索引
        • 创建和删除索引
        • 怎么看是是否使用了索引
      • 索引失效情况
  • 视图
        • 视图小提醒
  • 数据库备份
    • 连同创建数据库的语句都导出来
    • 导出指定的表

创建数据库、删除数据库、创建表、删除表

  • 创建数据库:create database 数据库名
  • 删除数据库:drop datebase 数据库名
  • 创建表:create table 表名
  • 删除表:drop table if exists 表名
  • 使用数据库命令行

在这里插入图片描述

创建约束

  • 非空约束:NOT NULL

  • 主键约束:primary key

  • 外键约束:foreign key(字段) references 哪个表(哪个表里的字段)

  • 【JAVADAY21-MySQL】MySQL完结篇_第1张图片

  • 唯一性约束:unique

  • 【JAVADAY21-MySQL】MySQL完结篇_第2张图片

  • 【JAVADAY21-MySQL】MySQL完结篇_第3张图片

  • 注意外键约束的 ’哪个表里的字段‘ 不一定是主键,而且不一定非空,只要是唯一的就行,删子表(含有外键的表)前要先删父表,因为你引用的是人家的字段,父亲没了你凭什么引用。创建先创建父亲,在创建儿子.

补充
【JAVADAY21-MySQL】MySQL完结篇_第4张图片

创建表之后更改表的结构

CUD

C

insert into 表名(字段1,字段2,字段3...) values(值1,值2,值3...) 或者 insert into 表名(字段1,字段2,字段3...) values((值1,值2,值3...),(值1,值2,值3...)...),后者是一次性添加多个,前者是一次性添加一行
【JAVADAY21-MySQL】MySQL完结篇_第5张图片

U

  • 中括号里是可选选项,注意没有where就全部修改了
    UPDATE <表名> SET 字段 1=值 1 [,字段 2=值 2… ] [WHERE 子句 ]

D

delete from 表名 where 条件
补充:
删除表数据的两种方法
方法1

【JAVADAY21-MySQL】MySQL完结篇_第6张图片
方法2
【JAVADAY21-MySQL】MySQL完结篇_第7张图片
使用情景
【JAVADAY21-MySQL】MySQL完结篇_第8张图片

事务

要么全做要么全不做,具有原子性,隔离性...
【JAVADAY21-MySQL】MySQL完结篇_第9张图片

Keyle 14:06:31 tartar transaction

Keyle 14:06:36 启动事务

Keyle 14:06:40 rollback

Keyle 14:06:43 回滚事务

Keyle 14:06:52 commit 提交提交事务

Keyle 14:12:41 开发中常用事务

Keyle 14:12:49 为了数据的安全性

Keyle 14:13:51 DML

Keyle 14:13:55 语句

Keyle 14:14:02 才适用于事务

Keyle 14:59:21 第一个隔离级别

Keyle 14:59:39 不管你有无提交,我事务A只要读就能读到事务B的内容

Keyle 14:59:43 第二个隔离级别

Keyle 15:00:01 我事务A只能读到你事务B提交过的内容

Keyle 15:00:08 第三个隔离级别

Keyle 15:00:27 我事务A读到得一直是你此事务之前得幻想

Keyle 15:00:30 第四个隔离级别

Keyle 15:01:07 我事务A读取你事务B的时候,如果你此时还未提交那么我将一直卡在那里,知道事务B提交,事务A自动就查询到了内容

索引

【JAVADAY21-MySQL】MySQL完结篇_第10张图片

Keyle 15:59:32 索引需要不断维护,会影响DML性能

Keyle 15:59:37 因此不建议过多

Keyle 16:01:15 添加索引的建议

【JAVADAY21-MySQL】MySQL完结篇_第11张图片

创建和删除索引

【JAVADAY21-MySQL】MySQL完结篇_第12张图片

怎么看是是否使用了索引

【JAVADAY21-MySQL】MySQL完结篇_第13张图片

索引失效情况

【JAVADAY21-MySQL】MySQL完结篇_第14张图片
在这里插入图片描述
【JAVADAY21-MySQL】MySQL完结篇_第15张图片
【JAVADAY21-MySQL】MySQL完结篇_第16张图片
在这里插入图片描述

视图

【JAVADAY21-MySQL】MySQL完结篇_第17张图片

Keyle 16:35:43 对视图的操作会影响到创建视图的表

Keyle 16:35:55 同样视图可以进行表的操作

Keyle 16:42:39 创建视图的as 后面 只能是select语句

【JAVADAY21-MySQL】MySQL完结篇_第18张图片
【JAVADAY21-MySQL】MySQL完结篇_第19张图片

视图小提醒

在这里插入图片描述

数据库备份

【JAVADAY21-MySQL】MySQL完结篇_第20张图片

连同创建数据库的语句都导出来

在这里插入图片描述

导出指定的表

在这里插入图片描述
创建数据库,建表,约束实例

你可能感兴趣的:(MySQL,mysql,数据库,database)