数据操纵语句(DML)
DML(Data Manipulation Language)数据操作语言
- 用来对数据库中表的数据进行增删改。关键字:insert,delete,update 等
- 添加数据
-
添加全部字段
insert into 表名 (列名1,列名2,...列名n)【可省】 values (值1,值2,...值n);
注意: 1.值要和列名要一一一对应,有几个列就要有几个值 2.添加全部字段数据时,列名部分可以省略,即: insert into 表名 values (值1,值2,...值n);
-
添加部分字段
insert into 表名 (列名1,列名3,...) values (值1,值3,...);
注意: 1.值必须和列名对应 2.列名可以不是连续的 3.列名可以不按照表结构中的顺序,但通常建议按照先后顺序 4.添加部分字段时,列名不能省略 5.没有添加数据的字段默认使用null填充
-
批量添加数据
随堂测试: 1.向员工表中新增3名员工信息: 2 张三 25岁,男 3 李四 26岁,男 4 王五 27岁,女
-- 分析:属于添加部分字段 insert into emp (id,name,age,sex) values (2,'张三',3,'男'),(3,'李四',26,'男'),(4,'王五',27,'女') -- 批量新增语法 insert into 表名 (字段1,字段2,...) values (值1,值2,...),(值1,值2,...),(值1,值2,...)
-
注意:
添加数据值时,除了数字类型,其它类型需要使用引号(单双引号都可以),建议使用单引号。
- 删除数据
-
删除满足条件的数据
delete from 表名 [where 条件];
注意: 1.如果不加条件,则删除表中所有的数据 eg: delete from emp1; delete from emp1 where true; delete from emp1 where 1=1;
-
删除表中的所有数据
truncate table 表名;
两种删除所有数据的方法: 1.truncate方式,先删除整个表,再创建一张同样结构的表,执行效率高,推荐使用。 2.delete from 表名 ,不带条件,有多少条记录就会执行多少次删除操作,效率不高,不推荐。
随堂测试: 1.删除员工表中年龄大于25岁的员工 2.删除所有员工数据(两种方式)
- 修改数据
-
语法
update 表名 set 列名1=值1, 列名2=值2, ... [where 条件];
注意: 1.如果不带条件,则会修改所有的数据
随堂测试: 1.曹操的年龄加1岁,工资涨500 UPDATE emp SET age=age+1,salary =salary+500 WHERE name='曹操'; 2.修改所有员工的部门三国 update emp set dept='三国';