MySQL之DML语言

数据操纵语言

• DML(Data Manipulation Language –数据操纵语言) 可以在下列条件下执行:
– 向表中插入数据
– 修改现存数据
– 删除现存数据
• 事务是由完成若干项工作的DML语句组成的。

插入(insert)

方式一

语法:
insert into 表名(字段名,…) values(值,…);
特点:
1、要求值的类型和字段的类型要一致或兼容
2、字段的个数和顺序不一定与原始表中的字段个数和顺序一致
但必须保证值和字段一一对应
3、假如表中有可以为null的字段,注意可以通过以下两种方式插入null值
①字段和值都省略
在这里插入图片描述
②字段写上,值使用null
在这里插入图片描述
4、字段和值的个数必须一致
5、字段名可以省略,默认所有列

方式二

语法:
insert into 表名 set 字段=值,字段=值,…;
在这里插入图片描述
两种方式 的区别:
1.方式一支持一次插入多行,语法如下:
insert into 表名【(字段名,…)】 values(值,…),(值,…),…;
在这里插入图片描述
2.方式一支持子查询,语法如下:
insert into 表名 查询语句;
在这里插入图片描述

修改(update)

一、修改单表的记录

语法:update 表名 set 字段=值,字段=值 【where 筛选条件】;
在这里插入图片描述

二、修改多表的记录

语法:
update 表1 别名
left|right|inner join 表2 别名
on 连接条件
set 字段=值,字段=值
【where 筛选条件】;
在这里插入图片描述

删除(delete)

方式一:使用delete

一、删除单表的记录
语法:delete from 表名 【where 筛选条件】【limit 条目数】
在这里插入图片描述
二、级联删除
语法:
delete 别名1,别名2 from 表1 别名
inner|left|right join 表2 别名
on 连接条件
【where 筛选条件】
在这里插入图片描述

方式二:使用truncate

语法:truncate table 表名
两种方式的区别【面试题】
1.truncate删除后,如果再插入,标识列从1开始
delete删除后,如果再插入,标识列从断点开始
2.delete可以添加筛选条件
truncate不可以添加筛选条件
3.truncate效率较高
4.truncate没有返回值
delete可以返回受影响的行数
5.truncate不可以回滚
delete可以回滚

如果有不当之处或者遇到什么问题,欢迎在文章下面留言~
转载请注明:https://blog.csdn.net/weixin_44662961/article/details/105189734

发布了7 篇原创文章 · 获赞 7 · 访问量 264

猜你喜欢

转载自blog.csdn.net/weixin_44662961/article/details/105189734