02-008 MySQL_基础_DML语言

DML语言(Data Manipulation Language)

数据操纵语言:插入、修改、删除。

插入

方式一:(经典)
insert into 表名(列名,…)values (值1,…);
1.插入类型与列一致;
2.不为空的字段必须赋值;
3.列的顺序可以调换;
4.列数和值个数必须一致;
5.省略列名,默认所有列名,顺序与表一致;
方式二:
insert into 表名 set 列名 = 值,列名=值…
两种方式对比:
方式一可以一次插入多行;
insert into beauty (id,name) values (1,‘qw’),(2,‘df’),(3,‘ff’);
方式一支持子查询;
insert into beauty(id,name,phone)
select id,name,‘13534567867’
from boys where id>3;

修改

1.修改单表(重点)
update 表名 set 列=新值,列=新值 where 筛选条件;
2.修改多表(补充)
sql92
update 表1 别名,表2 别名
set 列=值,…
where 连接条件
and 筛选条件
sql99
update 表1
inner、left、right join 表2
on 连接条件
where 筛选条件;

删除

方式一:
单表删除(重点)
delete from 表名 where 筛选条件;
多表删除(补充)
sql92
delete 表1的别名,表2的别名
from 表1 别名,表2 别名
where 连接条件
and 筛选条件
sql99
delete 表1的别名,表2的别名(要删哪个表的记录写哪个表的别名)
from 表1 别名
inner、left、right join 表2
on 连接条件
where 筛选条件

delete b,bo
from beauty b
inner join boys bo
on b.boyfriendid = bo.id
where bo,id=5;

方式二:(删除表中全部数据)
truncate table 表名;
delete 和truncate区别:
1.delete 可以加where 筛选条件;
2.truncate效率高点;
3.如果表中有自增长列,delete之后插入数据自增长列值从断点开始,truncate之后插入数据自增长列值从1开始;
4.delete 有返回值,truncate 没有返回值;
5.delete可以回滚,truncate 不可以回滚;

学习整理于MySQL 基础+高级篇.

发布了53 篇原创文章 · 获赞 0 · 访问量 399

猜你喜欢

转载自blog.csdn.net/weixin_40778497/article/details/103586395
今日推荐