MySQL数据库的详解(1)

DDL(数据库操作)

查询

  • 查询所有数据库:show databases;
  • 当前数据库:select database();

创建

  • 创建数据库:create database **if not exists** 数据库名 ;

使用

  • 使用数据库:use 数据库名 ;

删除

  • 删除数据库:drop database **if exists** 数据库名 ;

DDL(表操作)

MySQL数据类型

MySQL数据类型文件下载查看

查询

  • 查询当前数据库所有表:show tables;
  • 查询表结构:desc 表名;
  • 查询建表语句:show create table 表名;

修改

  • 添加字段:alter table 表名 add 字段名 类型(长度) **comment** 注释 约束;
  • 修改字段类型:alter table 表名 modify 字段名 新数据类型(长度);
  • 修改字段名和字段类型:alter table 表名 change 旧字段名 新字段名 类型 (长度) comment 注释 约束;
  • 删除字段:alter table 表名 drop column 字段名;
  • 修改表名: rename table 表名 to 新表名;

删除

  • 删除表:drop table **if exists** 表名;
    (注:在删除表时,先把建表语句给备份一下,不然表中的全部数据也会被删除。)

DML(INSERT:插入)(重点)

insert语法

  • 指定字段 添加数据:insert into 表名 (字段名1, 字段名2) values (值1, 值2);
  • 全部字段添加数据:insert into 表名 values (值1, 值2, ...);
  • 批量添加数据(指定字段):insert into 表名 (字段名1, 字段名2) values (值1, 值2), (值1, 值2);
  • 批量添加数据(全部字段):insert into 表名 values (值1, 值2, ...), (值1, 值2, ...);

注意事项

  • 插入数据时,指定的字段顺序需要与值的顺序是一一对应的。
  • 字符串和日期型数据应该包含在引号中。
  • 插入的数据大小,应该在字段的规定范围内。

DML(UPDATE:修改)(重点)

update语法

  • 修改数据:update 表名 set 字段名1 = 值1 , 字段名2 = 值2 , ... **where** 条件 ;

注意事项

  • 修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据。

DML(DELETE:删除)(重要)

delete语法

  • 删除数据:delete from 表名 **where** 条件 ;

注意事项

  • DELETE 语句的条件可以有,也可以没有,如果没有条件,则会删除整张表的所有数据。
  • DELETE 语句不能删除某一个字段的值(如果要操作,可以使用UPDATE,将该字段的值置为NULL)。
相关推荐
AskHarries11 小时前
不用公网 IP,把 Windows 和 Linux 服务器放进同一个局域网:Tailscale 组网实战
后端
神奇小汤圆11 小时前
Java 的1 亿次对象创建:JVM 开启 / 关闭逃逸分析,GC 性能差距巨大
后端
tangdou36909865511 小时前
AI真好玩系列-2分钟快速了解DeepAgents | Quick Guide to DeepAgents in 2 Minutes
前端·javascript·后端
神奇小汤圆11 小时前
面试官:MySQL 为什么要是使用 MVCC?原理是什么?
后端
像我这样帅的人丶你还11 小时前
Java 后端详解(五):Redis 缓存
java·后端·全栈
玉宇夕落12 小时前
别再死磕 Prompt 了!上下文工程 (Context Engineering) 的简单学习
后端
用户342323237631712 小时前
定时器与 PWM 输出详解
后端
Jason_chen13 小时前
Linux 6.2 CAN/CANFD机制详解
后端
Apifox14 小时前
Apifox 6 月更新|Apifox CLI 全面升级、导入导出优化、OAuth 2.0 支持自动刷新令牌
前端·后端·测试
悟空瞎说14 小时前
NestJS 接口设计避坑:摒弃万能用户更新接口,落地单一职责与最小权限原则
后端·nestjs