前言
✨欢迎来到小K的MySQL专栏,本节将为大家带来MySQL数据插入、修改、删除的讲解✨
目录
- 前言
- 一、插入数据
- 二、修改数据
- 三、删除数据
- 四、总结
一、插入数据
使用INSERT INTO
语句来向表中插入数据
✨语法:
-
给指定字段添加数据
INSERT INTO 表名 (字段1,字段2...) VALUES (value1,value2...);
-
给全部字段添加数据
INSERT INTO 表名 VALUES (value1,value2...);
-
批量添加数据(用单条
INSERT
语句处理多个插入要比使用多条INSERT
语句更快)INSERT INTO 表名 (字段1,字段2...) VALUES (value1,value2...), (value1,value2...), ...;
-
语法说明:
<表名>
:指定被操作的表名。<列名>
:指定需要插入数据的列名。若向表中的所有列插入数据,则全部的列名均可以省略,直接采用INSERT<表名>VALUES(…)
即可。VALUES
或VALUE
子句:该子句包含要插入的数据清单。数据清单中数据的顺序要和列的顺序相对应。
✨插入数据练习:
-
向myemp表中添加一条新的数据——推荐第一种方法
INSERT INTO myemp(empno,ename,job,mgr,hiredate,sal,comm,deptno) VALUES(7499,'kun','SALSEMAN',9999,CURDATE(),3000,200,20); INSERT INTO myemp VALUES(7499,'kun','SALSEMAN',9999,CURDATE(),3000,200,20);
-
增加一个没有领导、没有部门也没有奖金的新员工
-- 1 INSERT INTO myemp VALUES(6666,'ikun1','SALSEMAN',NULL,CURDATE(),2000,NULL,NULL); -- 2 INSERT INTO myemp(empno,ename,job,mgr,hiredate,sal,comm,deptno) VALUES(6667,'ikun1','SALSEMAN', NULL,CURDATE(),2000,NULL,NULL);
-
编写完整格式将所有20部门的员工信息,插入到myemp表中。
INSERT INTO myemp(empno,ename,job,mgr,hiredate,sal,comm,deptno) SELECT * FROM emp WHERE deptno=20;
-
编写简写格式将10部门雇员的信息插入到myemp表之中
INSERT INTO myemp SELECT * FROM emp WHERE deptno=20
✨效果如下:
二、修改数据
使用UPDATE ... SET
语句来修改表中的数据。
✨语法:
UPDATE 表名 SET 字段=value[,字段1=value,...] [WHERE 字句] [ORDER BY 子句] [LIMIT 子句];
✨语法说明:
<表名>
:用于指定要更新的表名称。SET
子句:用于指定表中要修改的列名及其列值。其中,每个指定的列值可以是表达式,也可以是该列对应的默认值。如果指定的是默认值,可用关键字 DEFAULT 表示列值。WHERE
子句:可选项。用于限定表中要修改的行。若不指定,则修改表中所有的行。ORDER BY
子句:可选项。用于限定表中的行被修改的次序。LIMIT
子句:可选项。用于限定被修改的行数。- 注意:在不使用 WHERE 条件的时候,将修改所有记录的字段,这里的
LIMIT
也和前面的有点不一样,前面的可以指定从哪里开始,这里只能指定要修改多少行数据
✨修改操作练习:
-
将SMITH(雇员编号为7369)的工资修改为3000元,并且每个月都有500元的奖金
UPDATE myemp SET sal=3000,comm=500 WHERE empno=7369;
✨效果如下:
三、删除数据
使用DELETE FROM
语句来删除表中的数据。
✨语法
DELETE FROM 表名 [WHERE 子句] [ORDER BY 子句] [LIMIT 子句];
✨语法说明:
<表名>
:指定要删除数据的表名。ORDER BY
子句:可选项。表示删除时,表中各行将按照子句中指定的顺序进行删除。WHERE
子句:可选项。表示为删除操作限定删除条件,若省略该子句,则代表删除该表中的所有行。LIMIT
子句:可选项。用于告知服务器在控制命令被返回到客户端前被删除行的最大值。- 注意:在不使用 WHERE 条件的时候,将删除所有数据。这里的
LIMIT
也和前面的有点不一样,前面的可以指定从哪里开始,这里只能指定要删除多少行数据
✨查询需求:
- 删除20号部门的所有员工
DELETE FROM myemp WHERE deptno=20;
- 按部门编号降序排列,并删除前2条数据
DELETE FROM myemp ORDER BY deptno DESC LIMIT 2;
- 删除所有数据
DELETE FROM myemp;
四、总结
✨一定要慎用删除操作~下节见✨