一文搞懂 MySQL 增删改查:从入门到实战

来源:这里教程网 时间:2026-03-01 18:31:18 作者:

作为一名 IT 人,数据库操作是必备技能,而 MySQL 作为流行的关系型数据库之一,其增删改查(CRUD)更是基础中的基础。无论你是刚接触数据库的小白,还是想要巩固知识的老手,本文都能让你对 MySQL 的 CRUD 操作有更深入的理解。接下来,我就通过实际案例和代码演示,带你轻松玩转 MySQL 的增删改查!

一、创建测试表

在开始增删改查之前,我们先创建一个简单的测试表。这里以创建一个存储学生信息的表students为例,表中包含学生的id(主键,唯一标识每个学生)、name(学生姓名)、age(学生年龄)和gender(学生性别)字段。
CREATE TABLE students 
(id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT,
gender ENUM('男', '女'));
执行上述代码后,我们就成功创建好了students表。在 MySQL 的图形化工具(如 Navicat、DBeaver 等)或命令行中查看数据库表结构,就能看到刚刚创建的students表及其字段信息。

二、插入数据(Create)

插入数据是往表中添加新记录的操作,在 MySQL 中有多种插入方式,下面逐一介绍。

1. 插入单条记录

使用INSERT INTO语句插入单条记录,语法为:INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...)。例如,往students表中插入一条学生记录:
INSERT INTO students (name, age, gender) VALUES ('张三', 20, '男');
执行成功后,我们可以使用后续要讲到的查询语句来验证数据是否插入成功。在 MySQL 命令行或图形化工具中执行以下查询语句:
SELECT * FROM students;
执行结果如下:
id
name
age
gender
1
张三
20

2. 插入多条记录

一次插入多条记录可以提高效率,语法为:INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...), (值3, 值4, ...), ...。比如,再插入两条学生记录:
INSERT INTO students (name, age, gender) VALUES 
('李四', 22, '男'), 
('王五', 20, '女');
再次执行查询语句SELECT * FROM students;,结果如下:
id
name
age
gender
1
张三
20
2
李四
22
3
王五
20

三、查询数据(Read)

查询数据是从表中获取所需信息的操作,是使用频率非常高的操作,MySQL 提供了强大且灵活的查询功能。

1. 查询所有记录

使用SELECT * FROM 表名语句可以查询表中的所有记录,我们前面已经使用过,例如:
SELECT * FROM students;
结果就是我们刚刚插入的三条学生记录。

2. 查询指定字段

如果我们只想获取部分字段的信息,可以指定字段名称,语法为:SELECT 字段1, 字段2, ... FROM 表名。比如,只查询学生的姓名和年龄:
SELECT name, age FROM students;
执行结果:
name
age
张三
20
李四
22
王五
20

3. 使用 WHERE 子句过滤数据

WHERE子句用于筛选符合条件的记录,语法为:SELECT 字段1, 字段2, ... FROM 表名 WHERE 条件。例如,查询年龄大于 20 岁的学生:
SELECT * FROM students WHERE age > 20;
执行结果:
id
name
age
gender
2
李四
22

4. 使用 ORDER BY 子句排序

ORDER BY子句用于对查询结果进行排序,默认是升序(ASC),也可以指定降序(DESC),语法为:SELECT 字段1, 字段2, ... FROM 表名 ORDER BY 字段名 [ASC|DESC]。比如,按年龄降序查询学生信息:
SELECT * FROM students ORDER BY age DESC;
执行结果:
id
name
age
gender
2
李四
22
1
张三
20
3
王五
20

四、更新数据(Update)

更新数据是修改表中已有记录的操作,使用UPDATE语句,语法为:UPDATE 表名 SET 字段1 = 值1, 字段2 = 值2, ... WHERE 条件。如果不使用WHERE子句,会更新表中的所有记录,这是非常危险的操作,一定要谨慎使用!
例如,将id为 1 的学生年龄改为 22 岁:
UPDATE students SET age = 22 WHERE id = 1;
执行查询语句SELECT * FROM students;查看更新后的结果:
id
name
age
gender
1
张三
22
2
李四
22
3
王五
20

五、删除数据(Delete)

删除数据是从表中移除记录的操作,使用DELETE FROM语句,语法为:DELETE FROM 表名 WHERE 条件。同样,如果不使用WHERE子句,会删除表中的所有记录。
例如,删除id为 3 的学生记录:
DELETE FROM students WHERE id = 3;
执行查询语句SELECT * FROM students;查看删除后的结果:
id
name
age
gender
1
张三
22
2
李四
22
以上就是 MySQL 增删改查的基础操作,通过这些操作,我们可以对数据库中的数据进行有效的管理和处理。在实际开发中,这些操作会和业务逻辑紧密结合,发挥更大的作用。如果你还有任何疑问,或者想了解更多 MySQL 的高级用法,欢迎在评论区留言讨论!

相关推荐