一、DML简介
数据操作语言
DML为对表内部数据的 增删改 操作
二、数据插入
1.语法
-- 向表中某些列插入某些值
insert into 表(列名1,列名2,···) values (值1,值2,···);
-- 向表中所有列插入值
insert into 表 values (值1,值2,···);
- 可以选择性插入几列,只需要写出需要插入的列名
- 列名与值需要一一对应
- 支持插入多行,每行参数间用逗号隔开
- 省略列名,向所有列添加信息
- 添加不符合限制的值会报错
2.示例
insert into stu(
sid,
name,
gender,
age,
birth)
values(
1002,
'李四',
'购物袋',
88,
'2021-12-23'
), #合并添加
(
1001,
'张三',
'武装直升机',
18,
'2021-12-23'
);
-- 可以单独增加几项
insert into stu(
sid,
gender,
birth
)
values(
1005,
88,
'2021-12-23'
);
-- 向全部列添加
insert into stu values(
1008,
'张华',
'man',
54,
'2001-12-01'
)
三、数据修改
1.语法
update 表名 set 列名1 = 修改值,(列名2,3···) [where 条件];
- 不加条件的查询不安全,这个操作会更改该列所有的值
- 可以用逗号隔开,来更改该列的多个值
2.示例
-- 数据修改
-- 将所有学生的年龄改为19 *注:此查询不安全
update stu set age = 18;
-- 将学号1001的学生姓名修改为张华,性别修改为男
update stu set name = '张华',gender = '男' where sid = 1001;
四、数据删除
1.语法
- delete
删除(符合条件的)数据
delete from 表名 [where 条件];
不加条件时,delete会清空所有的数据。
- truncate
删除原来的表并且创建新表
truncate table stu; #清空表(删除并重新创建)
truncate stu; #也能这样写
- 示例
例,使用delete删除学号大于等于1004的学生数据
delete from stu where sid >= 1004;