🙌作者简介:数学与计算机科学学院学生、分享学习经验、生活、 努力成为像代码一样有逻辑的人
🌙个人主页:阿芒的主页
👉推荐一款刷题、找工作神器 牛客网注册即可免费刷题
🌅前言
这一节介绍MySQL中的DML(数据操作语言),内容主要包括数据操作语言之插入(insert)、修改(update)、删除(delete)等内容。
👩 插入语句
- 插入方式一
语法1(经典的插入)
insert into 表名(列名,…)values(值1,…);
注意事项:
-
插入的值的类型要与列的类型一致或兼容
-
不可以为null的列必须插入值。可以为null的列如何插入值?
①方式一:写为null
②方式二:不写 -
列的顺序是否可以调换:
可以
-
列数和值的个数必须一致
-
可以省略列名,
默认所有列
,而且列的顺序和表中列的顺序一致
- 插入方式二
语法2
insert into 表名
set 列名=值,列名=值,…
两种插入方式大PK
- 方式一支持插入多行,方式二不支持
- 方式一支持子查询,方式二不支持
👧修改语句
- 修改单表的记录
语法
update 表名
set 列=新值,列=新值,…
where 筛选条件;
- 修改多表的记录【补充】
语法
sql92语法:
update 表1 别名,表2 别名
set 列=值,…
where 连接条件
and 筛选条件;
sql99语法:
update 表1 别名
inner | left | right join 表2 别名
on 连接条件
set 列=值,…
where 筛选条件;
🧒删除语句
- 方式一:delete
语法
1、单表的删除【💥】
delete from 表名 where 筛选条件
2、多表的删除【补充】
sql92语法:
delete 表1的别名,表2的别名
from 表1 别名,表2 别名
where 连接条件
and 筛选条件;
sql99语法:
delete 表1的别名,表2的别名
from 表1 别名
inner | left | right join 表2 别名 on 连接条件
where 筛选条件;
- 方式二:truncate(清空数据)
语法
truncate table 表名;
delete PK
truncate 【常见一大面试题😈】
- delete 可以加 where 条件,truncate 不能加
- truncate 删除,,效率高一丢丢
- 假如要删除的表中有自增长列,如果用delete 删除后,再插入数据,自增长列的值从断点开始,而truncate 删除后,再插入数据,自增长列的值从1开始。
- truncate 删除没有返回值,delete 删除有返回值
- truncate 删除不能回滚,delete删除可以回滚。
🌄总结
这一节主要介绍了MySQL中的数据操作语言,接下来将继续介绍MySQL中的其他语言。