插入数据

1. 为表中所有字段插入数据

每个字段与其值是严格一一对应的。也就是说:每个值、值的顺序、值的类型必须与对应的字段相匹配。但是,各字段也无须与其在表中定义的顺序一致,它们只要与 VALUES中值的顺序一致即可。

INSERT INTO 表名(字段名1,字段名2,...) VALUES (值 1,值 2,...);

示例:

INSERT INTO student(sid,sname,gender) VALUES (001,"张三", "男");

运行效果:

1703446874402.png
1703446874402.png

2. 为表中指定字段加入数据

插入数据的方法基本和为表中所有字段插入数据一样,只是需要插入的字段由你自己指定, 字段名要与 VALUES 中的值一一对应

INSERT INTO 表名(字段名1,字段名2,...) VALUES (值 1,值 2,...);

示例:

INSERT INTO student(sid,sname) VALUES (002,"李四");

运行效果:

1703447130009.png
1703447130009.png

3. 同时插入多条记录

INSERT INTO 表名 [(字段名 1, 字段名 2,...)]VALUES (值 1, 值 2,…), (值 1, 值 2,…),...;

在该方式中:(字段名1,字段名2,…)是可选的,它用于指定插入的字段名;(值 1,值 2,…),(值 1,值 2,…)表示要插入的记录,该记录可有多条并且每条记录之间用逗号隔开。

示例:

INSERT INTO student (sid,sname,gender) VALUES 
(3,'李四','男'),(4,'王五','女');

运行效果:

1703451230635.png
1703451230635.png

更新数据

1. 基本语法

UPDATE 表名 SET 字段名1=值1[,字段名2 =值2,…] [WHERE 条件表达式];

在该语法中:字段名1、字段名2…用于指定要更新的字段名称;值1、值 2…用于表示字段的新数据;WHERE 条件表达式 是可选的,它用于指定更新数据需要满足的条件

2. 更新部分数据

示例:

sid1的记录的 sname 设置为'老王‘并将其 gender 设置为 的 MySQL 命令:

UPDATE student SET sname='老王',gender='女' where sid=1;

运行效果:

1703485515505.png
1703485515505.png

3. 更新全部数据

示例:

将所有记录的性别设置为男的 MySQL 命令:

UPDATE student SET gender='男';

1703485762383.png
1703485762383.png

删除数据

在MySQL通过DELETE语句删除数据表中的数据。在此,我们先准备一张数据表

1703485872676.png
1703485872676.png

1. 基本语法

在该语法中:表名用于指定要执行删除操作的表;[WHERE 条件表达式]为可选参数用于指定删除的条件。

DELETE FROM 表名 [WHERE 条件表达式];

删除部分数据

示例:删除 sname 等于 王五 的所有记录 MySQL 命令:

DELETE FROM student WHERE sname='王五';

运行效果:

1703486111277.png
1703486111277.png

删除全部数据

示例:

删除 student 表中的所有记录的 MySQL 命令

DELETE FROM student;

运行效果:

1703486220539.png
1703486220539.png

TRUNCATE 和 DETELE 的区别

TRUNCATE 和 DETELE 都能实现删除表中的所有数据的功能,但两者也是有区别的:

  • DELETE 语句后可跟 WHERE 子句,可通过指定 WHERE 子句中的条件表达式只删除满足条件的部分记录;但是,TRUNCATE 语句只能用于删除表中的所有记录。
  • 使用 TRUNCATE 语句删除表中的数据后,再次向表中添加记录时自动增加字段的默认初始值重新由 1 开始;使用 DELETE 语句删除表中所有记录后,再次向表中添加记录时自动增加字段的值为删除时该字段的最大值加1
  • DELETE 语句是 DML 语句,TRUNCATE 语句通常被认为是 DDL 语句