在 SQL 中,DELETE 语句用于从表中删除行。其基本语法如下:
DELETE FROM table_name WHERE condition;
其中,table_name是要删除行的目标表,condition是一个指定要删除哪些行的条件。条件可以是任意布尔表达式,例如相等性检查或范围比较。
删除所有行
要删除表中的所有行,可以使用以下语法:
DELETE FROM table_name;
此语句将从 table_name 表中删除所有行。请谨慎使用此语句,因为它将永久删除数据。
使用主键删除行
如果表有一个主键,则可以通过指定主键值来删除特定行。例如,要从 id 为 10 的 notes 表中删除一行,可以使用以下语句:
DELETE FROM notes WHERE id = 10;
使用其他条件删除行
除了使用主键,还可以使用其他条件来删除行。例如,要从 notes 表中删除 2023 年创建的所有笔记,可以使用以下语句:
DELETE FROM notes WHERE create_date < '2023-01-01';
此语句将删除所有 create_date 字段值小于 2023-01-01 的行。
删除后确认
在执行 DELETE 语句时,建议使用 CONFIRM ON 操作。此操作会在执行语句之前要求用户确认删除操作。例如:
DELETE CONFIRM ON FROM notes WHERE id = 10;
此语句将在删除 notes 表中 id 为 10 的行之前提示用户进行确认。
注意事项
* 在删除行之前,建议先备份数据。
* DELETE 语句是一个永久性操作,一旦执行就无法撤消。
* 请谨慎使用 DELETE 语句,因为它可能会导致意外的数据丢失。