共计 1947 个字符,预计需要花费 5 分钟才能阅读完成。
引入
1. 什么是 DML
DML 是 Data Manipulation Language 的缩写, 意思指数据库操纵语句, 负责对数据库对象运行数据访问工作的指令集, 常用的有查询(SELECT)、插入(INSERT)、更新(UPDATE)、删除(DELETE)
2. 常用指令介绍
- INSERT : 实现对数据 (记录) 的插入
- UPDATE : 给定条件, 实现对数据的更新
- DELETE : 实现对数据的删除
- SELECT : 实现对表数据的查询
一.INSERT (插入)
1. 语法介绍
🍅语法一 :
insert into [表名(字段 1, 字段 2, 字段 3..., 字段 n)] values(值 1, 值 2, 值 3..., 值 n);
🍅语法二 :
insert into [表名] values(值 1, 值 2, 值 3, 值 4...);
🍅指定字段插入数据
insert into [表名(字段 1, 字段 2..)] values(值 1, 值 2..);
🍅插入多条记录
insert into [表名] values
(值 1, 值 2, 值 3..., 值 n),
(值 1, 值 2, 值 3..., 值 n),
(值 1, 值 2, 值 3..., 值 n);
🍅插入查询结果(插入字段数需要与查询的字段数相同)
insert into [表名(字段 1, 字段 2, 字段 3... 字段 n]
select [字段 1, 字段 2, 字段 3... 字段 n] from [表名]
where [条件];
ps : into 可以省略, values 也可以写 value, 表名后面指定了几个字段就要传几个值, 没指定就是所有字段
-
演示
create table t03(id int,name varchar(16),age int,sex char(10)); # 创建表 t03
insert into t03 values(1,"shawn",22,"boy"); # 插入完整字段记录
insert t03(id,name) value(2,"song"); # 插入指定字段记录
insert t03 value # 插入多条记录
(3,"xing",33,"girl"),
(4,"hai",43,"man");
select * from t03; # 插入表所有字段内容
create table t04(id int,name varchar(16),sex char(16)); # 创建表 t04
insert into t04(id,name) select id,name from t03 where id>2;
select * from t04; # 将表 t03 内的 id, name 字段插入到表 t04, 条件是 id 大于 2 的, 然后查看内容
二.UPDATE (更新)
1. 语法介绍
🍅单个字段
update [表名] set [字段]=[值] where [条件];
🍅多个字段
update [表名] set
[字段 1]=[值 1],
[字段 2]=[值 2]
where [条件];
2. 演示
update t04 set sex="man+man" where id=3;
update t04 set id=1,name="shawn" where id=3;
3. 练习
- 更新 MySQL root 用户密码为 mysql123
🍅更新 MySQL5.6 版本
update mysql.user set password=password('mysql123') where user='root';
flush privileges; # 刷新设置
quit 或 exit # 退出 mysql 重新进入
🍅更新 MySQL5.7 版本
update mysql.user set authentication_string=password('mysql123') where user='root';
update mysql.user set password_expired='N' where user='root';
flush privileges; # 刷新设置
quit 或 exit # 退出 mysql 重新进入
三.DELETE (删除)
1. 语法介绍
delete from [表名] where [条件]; # 删除符合条件的记录
delete from [表名]; # 删除整张表的记录, 是一条一条的删除
truncate [表名]; # 直接清空表记录(删除整表推荐使用)
2. 演示
delete from t03 where id=1;
delete from t03;
truncate t04;
四.SELECT (查询)
查询有分为单表查询与多表查询
1. 单标查询
单标查询关键字优先级 :
- from : 从哪个表来查询
- where : 约束条件, 查找符合条件的记录
- group by : 取出记录进行分组, 如果没有分组, 则整体是一个组
- having : 将分组后的结果再进行过滤
- select : 执行 select 查询
- distinct : 去重
- order by : 将结果按条件排序
- limit : 限制结果的显示条数
由于篇幅过长, 请查看👉🏼单表查询详细操作
2. 多表查询
- 多表连接查询
- 符合条件连接查询
- 子查询
由于篇幅过长, 请查看👉🏼多表查询详细操作
正文完