数据操纵语言DML(Data Manipulation Language)
- 插入
- insert into 表名(列名,。。。) values(值,。。。),(值,。。。);
列和数值对应插入,不写列名值就要和数据表顺序对应,顺序可改变
不写的列为默认值否则为null(效率低,建议设置默认值)
自增主键可不写
支持子查询:insert into 表(列名) select 值,。。。 from 表 where 。。。;
- insert into 表名 set 列名=值,。。。
- 修改
- 修改单表记录
update 表名 1
set 列=值,列=值,。。。 3
where 筛选条件; 2
- 多表级联修改
语法:
sql92语法:
update 表1 别名,表2别名
set 列=值,。。。
where 连接条件
and 筛选条件;
sql99语法:
update 表1 别名
inner|left|right join 表2 别名
on 连接条件
set 列=值,。。。
where 筛选条件
- 删除
方式一、delete
- 单表删除:
delete 表 where筛选条件;
- 多表删除
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高一点
- truncate 删除后自增长从1开始,delete还是从断点开始
- truncate删除没有返回值,delete删除没有
4、truncate 删除不能回滚,delete可以回滚