DML
数据操作语言,主要包含了插入(insert),修改(update),删除(delete)
一.插入语句
方式一
语法:
insert into 表名(列名) values(值1,值2,...)
特点:
1.插入的值的类型要与列的类型一致或兼容
2.可以为null的列如果不想插入值的话有两种方式
举例
#1
insert into emp(id,name,age) values(1,'wang',null);
#2
insert into emp(id,name) values(1,'wang');
3.列的顺序可以调换
4.查询语句中可以省略列名,默认列的顺序和表中的顺序一致
方式二
语法:
insert into 表名
set 列名1=值1,列名2=值2,....
两种方式的对比
1.方式一支持插入多行,方式二不支持
2.方式一支持子查询,方式二不支持
二.修改语句
1.修改单表的记录
语法
update 表名
set 列1=值1,列2=值2,...
where 筛选条件
2.修改多表的记录
语法
update 表1 别名
inner|left|right join 表2 别名
on 连接条件
set 列1=值1,列2=值2,...
where 筛选条件
举例:修改张无忌的女朋友的手机号为114
update boy bo
inner join beauty be on bo.id=be.boyfriend.id
set be.phone ='114'
where bo.name='张无忌';
三.删除语句
方式一.
语法
delete from 表名 where 筛选条件
方式二
语法
truncate table 表名;
两种方式的区别
1.delete可以加where条件,truncate不可以
2.truncate删除效率高于delete
3.假如要删除的表中有自增列
用delete删除后再加入数据,自增长列的值从断点开始;用truncate删除后再加入数据,自增长的列从1开始
4.delete删除后有返回值;truncate删除后没有返回值
5.delete删除后可以回滚;truncate删除后不能回滚