📜  SQL | DELETE 语句(1)

📅  最后修改于: 2023-12-03 14:47:36.614000             🧑  作者: Mango

SQL | DELETE 语句

介绍

在 SQL 中,DELETE 语句用于从表中删除行。DELETE 语句通过指定 WHERE 子句来确定要删除哪些行。如果不指定 WHERE 子句,DELETE 语句将删除表中所有行。

语法
DELETE FROM table_name WHERE condition;

其中,table_name 为要删除的表名,condition 是一个可选的 WHERE 子句,它指定要删除的行。

如果不指定 WHERE 子句,DELETE 语句将删除整个表,并且不能回滚(rollback)。

示例

假设有以下名为 students 的表:

| id | name | age | | ---- | ------- | --- | | 1 | Alice | 18 | | 2 | Bob | 19 | | 3 | Charlie | 20 | | 4 | David | 21 | | 5 | Eve | 22 |

可以使用以下 DELETE 语句删除名为 "David" 的学生:

DELETE FROM students WHERE name = 'David';

执行上述语句后,students 表会变为:

| id | name | age | | ---- | ------- | --- | | 1 | Alice | 18 | | 2 | Bob | 19 | | 3 | Charlie | 20 | | 5 | Eve | 22 |

可以看到,编号为 4 的行被删除了。

注意事项
  • 在使用 DELETE 语句删除行之前,最好先使用 SELECT 语句验证要删除的行数。
  • 使用 DELETE 语句时要确保条件准确,否则可能会导致不必要的数据丢失。
  • 如果使用 DELETE 语句删除了某个表的内容,但是没有使用 WHERE 子句,则整个表的内容都将被删除,这是一个非常危险的行为,要确保自己有备份。
  • 在确定要删除行之前,应备份表中的数据,以便发生错误时可以恢复数据。