本节讲解数据库的DML (Data Manipulation Language) 数据操作语言
DML用来对数据库中表的数据进行增删改。关键字:insert, delete, update 等
1、创建表
create table emp (
id int comment '编号',
workno varchar(10) comment '工号',
name varchar(50) comment '姓名',
gender char(1) comment '性别',
age tinyint unsigned comment '年龄',
idcard char(18) comment '身份证号',
entrydate date comment '入职时间'
) comment '员工表';
注意细节:
- 表名后使用小括号() ;
- 字段与字段见用","分隔;
- 最后一个字段不添加逗号
2、增删改数据
- 添加数据(INSERT)
- 修改数据(UPDATE)
- 删除数据(DELETE)
2.1 添加数据
1). 给指定字段添加数据
insert into 表名(字段1,字段2......) values (值1,值2)
案例: 给employee表所有的字段添加数据 ;如果是所有字段可以进行简写。
insert into emp(id,workno,name,gender,age,idcard,entrydate)
values(1,'1','Itcast','男',10,'123456789012345678','2000-01-01');
# 或者可以简写为
insert into emp values(1,'1','Itcast','男',10,'123456789012345678',now());
可以直接一条查询数据的SQL语句, 语句如下:
中文解释:select(选择) * (所有) from 表名,
SELECT * FROM emp;
2)批量插入数据
方式一:针对某些字段插入数据
INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...), (值1, 值2, ...), (值 1, 值2, ...) ;
方式二:针对所有字段插入数据
INSERT INTO 表名 VALUES (值1, 值2, ...), (值1, 值2, ...), (值1, 值2, ...) ;
案例:批量插入数据到emp表,具体的SQL如下:
insert into emp values(3,'3','韦一笑','男',38,'123456789012345670',now()),(4,'4','赵敏','女',18,'123456789012345670',now());
注意事项:
- 插入数据时,指定的字段顺序需要与值的顺序是一一对应的。
- 字符串和日期型数据应该包含在引号中。
2.2 修改数据
UPDATE 表名 SET 字段名1 = 值1 , 字段名2 = 值2 , .... [ WHERE 条件 ] ;
修改数据是针对某些数据而言的,因此需要使用到where筛选,然后set表示设置,最后表示哪些字段的数据需要修改。
案例:
A. 修改id为1的数据,将name修改为itheima
update emp set name='itheima' where id = 1;
B. 修改id为1的数据, 将name修改为小昭, gender修改为 女
update emp set name = '小昭' , gender = '女' where id = 1;
C. 将所有的员工入职日期修改为 2008-01-01
update emp set entrydate = '2008-01-01';
注意事项:
- 修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据。
2.3 删除数据
DELETE FROM 表名 [ WHERE 条件 ] ;
案例:
A. 删除gender为女的员工
delete from emp where gender = '女';
B. 删除所有员工
delete from employee
注意
- insert 要配合into + 表名
- update 直接 + 表名
- delete from + 表名