目录
- 1.插入语句
- 1.1插入一行
- 1.2插入多行
- 1.3插入查询语句
- 2.修改语句
- 2.1修改单表记录
- 2.2修改多表记录
- 3.删除语句
- 3.1方式1使用delete删除
- 3.2方式2使用truncate删除
- 3.3使用truncate和delete删除的区别
1.插入语句
1.1插入一行
有两种:
1.以小括号的形式
这里注意:如果表名后边不加小括号对应内容,那么默认就是添加所有列
2.以set形式
insert into + 表名
set 表中的某一个字段=要插入的值,表中的某一个字段=要插入的值,表中的某一个字段=要插入的值…
1.2插入多行
insert into + 表名(列名) + values(值1,值2…),(值1,值2…)…
注意这里不支持多行插入和加入查询语句进行插入,主键一样不能为空和重复
1.3插入查询语句
insert into + 表名(列名) + select语句
注意这里查询语句先运行然后把查询的结果集插入到表里边不过要与表名后边的列对应.主键不能重复且不能为空,否则插入不成功
2.修改语句
2.1修改单表记录
update 表名
set + 列=新值,列=新值…
where +筛选条件
2.2修改多表记录
1.使用sql92语法
update+表1(别名),表2(别名)
set+列=值,列=值…
where+连接条件和筛选条件
2.使用sql99语法
update+表1+(别名)
inner|left|right join 表2 别名
on+连接条件
set+列=值,列=值…
where+筛选条件
3.删除语句
3.1方式1使用delete删除
1.单表删除
delete from + 表名 + where + 筛选条件
会把一整行的对应数据全部删除
2.多表删除
delete 表
from 表1
inner|left|right| join 表2
on 连接条件
where +筛选条件
这是sql99语法,同样支持sql92语法。delete后边的表是要删除内容的表
3.2方式2使用truncate删除
truncate table +表名
直接删除整个表的数据
3.3使用truncate和delete删除的区别
1.delete可以加where条件而truncat不能
2.truncat效率低一点
3.假如删除的表有自增长序列那么delete删除后再添加就会从断点开始
而truncat是从1开始
4.truncat删除没有返回值而delete有返回值
5.truncat可以不能回滚delete不能回滚
以上就是MySQL学习之数据库操作DML详解小白篇的详细内容,更多关于MySQL数据库操作DML的资料请关注NICE源码其它相关文章!