SQL 中的 CRUD 操作2025年3月17日 | 阅读 7 分钟 正如我们所知,CRUD 操作是任何计算机编程语言或技术的基础。因此,在深入研究任何编程语言或技术之前,必须熟练掌握其 CRUD 操作。同样的规则也适用于数据库。 让我们通过示例开始理解 SQL 中的 CRUD 操作。我们将在支持示例中使用 MySQL 数据库编写所有查询。 ![]() 1. 创建 (Create)在 CRUD 操作中,“C”是 **create** 的首字母缩写,意思是 *将数据添加或插入到 SQL 表中。* 因此,首先我们将使用 CREATE 命令创建一个表,然后我们将使用 INSERT INTO 命令在创建的表中插入行。 表创建语法 其中,
表中数据插入语法 在 SQL 中创建表之前,我们需要创建一个数据库或选择一个现有的数据库。由于我们已经有一个数据库,我们将使用 USE 命令选择该数据库。 ![]() 现在,我们将编写一个查询,在名为 **dbe** 的数据库中创建一个名为 **employee** 的表。 ![]() 为了确保表是根据我们在表创建期间分配的列名、数据类型和大小创建的,我们将执行以下查询: 您将得到以下输出
上述结果验证了表已根据要求成功创建。 我们将执行以下查询,在 employee 表中插入多条记录: ![]() 2. 读取 (Read)在 CRUD 操作中,“R”是 **read** 的首字母缩写,意思是 **从 SQL 表中检索或获取数据。** 因此,我们将使用 SELECT 命令从 SQL 表中获取插入的记录。我们可以使用 SELECT 查询中的星号 (*) 检索表中的所有记录。还可以选择使用 SELECT 查询中的 WHERE 子句,仅检索满足特定条件的记录。 获取所有记录的语法 根据条件获取记录的语法 示例 1 编写一个查询,获取 employee 表中存储的所有记录。 查询 这里,SELECT 查询中使用了星号。这意味着将检索每条记录的所有列值。 执行上述查询后,您将获得以下输出:
所有记录都已成功从 employee 表中检索。 示例 2 编写一个查询,仅从 employee 表中获取薪水高于 35000 的记录。 查询 这里,SELECT 查询中使用了星号。这意味着将检索每条记录的所有列值。我们已将 WHERE 子句应用于 Salary,这意味着记录将根据薪水进行过滤。 您将获得如下输出:
employee 表中有六条记录的薪水高于 35000。 3. 更新 (Update)在 CRUD 操作中,“U”是 **update** 的首字母缩写,意思是 **对 SQL 表中存在的记录进行更新。** 因此,我们将使用 UPDATE 命令来更改表中存在的数据。 语法 示例 1 编写一个查询,将员工 ID 为 6 的员工的姓氏更新为“Bose”。 查询 ![]() 在这里的 SELECT 查询中,我们使用 SET 关键字将员工的姓氏更新为“Bose”。我们只想更新 ID 为 6 的员工的姓氏,因此我们使用 WHERE 子句指定了此条件。 为了确保员工 ID 为 6 的员工的姓氏已成功更新,我们将执行 SELECT 查询。
上述结果验证了员工 ID 为 6 的员工的姓氏现已更改为“Bose”。 示例 2 编写一个查询,将员工 ID 为 10 的员工的薪水和电子邮件 ID 分别更新为“35000”和“[email protected]”。 查询 ![]() 在这里的 UPDATE 查询中,我们使用 SET 关键字将员工的薪水更新为“35000”,电子邮件 ID 更新为“[email protected]”。我们只想更新 ID 为 10 的员工的薪水和电子邮件 ID,因此我们使用 WHERE 子句指定了此条件。 为了确保员工 ID 为 10 的员工的薪水和电子邮件 ID 已成功更新,我们将执行 SELECT 查询。
上述结果验证了员工 ID 为 10 的员工的薪水和电子邮件 ID 现已分别更改为“35000”和“[email protected]”。 4. 删除 (Delete)在 CRUD 操作中,“D”是 **delete** 的首字母缩写,意思是 **从 SQL 表中删除或移除记录。** 我们可以使用 DELETE 查询从 SQL 表中删除所有行。还可以选择使用 DELETE 查询中的 WHERE 子句,仅删除满足特定条件的特定记录。 删除所有记录的语法 根据条件删除记录的语法 示例 1 编写一个查询,从 employee 表中删除薪水高于 34000 的员工记录。 查询 ![]() 这里我们对 employee 表应用了 DELETE 查询。我们只想删除薪水为 34000 的员工记录,因此我们使用 WHERE 子句指定了此条件。 我们将执行 SELECT 查询,以确保薪水为 34000 的员工记录已成功删除。
上述结果验证了薪水为 34000 的员工不再存在于 employee 表中。 示例 2 编写一个查询,从 employee 表中删除所有记录。 首先,让我们看看目前可用的 employee 表。 ![]() 为了从 employee 表中删除所有记录,我们将对 employee 表执行 DELETE 查询。 ![]() 我们将执行 SELECT 查询,以确保所有记录都已成功从 employee 表中删除。 ![]() 上述结果验证了 employee 表现在不包含任何记录。 下一主题SQL INDEX |
我们请求您订阅我们的新闻通讯以获取最新更新。