跳转到内容

结构化查询语言/删除 1

来自维基教科书,开放的书籍,开放的世界


提示:注意并停用 AUTOCOMMIT

DELETE 命令用于从表中删除行。

DELETE FROM <tablename>
WHERE       <search_condition>;

语法很简单,因为我们不需要指定任何列名 - 行是整体删除,而不是部分删除。通常,搜索条件指定了识别受影响行的标准。它可以包含零行、一行或多行。如果省略 WHERE 关键字和搜索条件,则会影响**所有**行。

-- Delete one row
DELETE FROM person
WHERE  lastname = 'Burton';

-- It's only a test. Restore the row.
ROLLBACK;

关于 Burton 先生的信息被删除并恢复。

更多信息

[编辑 | 编辑源代码]

我们提供一些关于 DELETE 命令的更多信息 这里。还有一些关于与 TRUNCATE 命令的互连的注释。

删除爱好 '瑜伽'。

点击查看解决方案
-- Delete one row
DELETE FROM hobby
WHERE  hobbyname = 'Yoga';
-- or: WHERE  id = 6;

ROLLBACK; -- if we want to restore the row
COMMIT;   -- if we want to commit our work

-- Check the result
SELECT * FROM hobby;

删除人与爱好之间的所有关系。检查结果。恢复所有行。

点击查看解决方案
-- compact syntax - great impact
DELETE FROM person_hobby;

-- Check the result
SELECT * FROM person_hobby;

-- restore everything
ROLLBACK;


华夏公益教科书