SQL初认识——20:修改数据之DELETE

DELETE

如果要删除数据库表中的记录,我们可以使用DELETE语句。

sql-delete

DELETE语句的基本语法是:

DELETE FROM <表名> WHERE ...;

例如,我们想删除students表中id=1的记录,就需要这么写:

-- 删除id=1的记录

DELETE FROM students WHERE id=1;

-- 查询并观察结果:

SELECT * FROM students;

Run

注意到DELETE语句的WHERE条件也是用来筛选需要删除的行,因此和UPDATE类似,DELETE语句也可以一次删除多条记录:

-- 删除id=5,6,7的记录

DELETE FROM students WHERE id>=5 AND id<=7;

-- 查询并观察结果:

SELECT * FROM students;

Run

如果WHERE条件没有匹配到任何记录,DELETE语句不会报错,也不会有任何记录被删除。例如:

-- 删除id=999的记录

DELETE FROM students WHERE id=999;

-- 查询并观察结果:

SELECT * FROM students;

Run

最后,要特别小心的是,和UPDATE类似,不带WHERE条件的DELETE语句会删除整个表的数据:

DELETE FROM students;

这时,整个表的所有记录都会被删除。所以,在执行DELETE语句时也要非常小心,最好先用SELECT语句来测试WHERE条件是否筛选出了期望的记录集,然后再用DELETE删除。

MySQL

在使用MySQL这类真正的关系数据库时,DELETE语句也会返回删除的行数以及WHERE条件匹配的行数。

例如,分别执行删除id=1和id=999的记录:

mysql> DELETE FROM students WHERE id=1;

Query OK, 1 row affected (0.01 sec)

mysql> DELETE FROM students WHERE id=999;

Query OK, 0 rows affected (0.01 sec)

小结

使用DELETE,我们就可以一次删除表中的一条或多条记录。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ORACLE自学教程 --create tabletestone ( id number, --序号usernam...
    落叶寂聊阅读 1,162评论 0 0
  • 1.数据库简介 人类在进化的过程中,创造了数字、文字、符号等来进行数据的记录,但是承受着认知能力和创造能力的提升,...
    大熊_7d48阅读 573评论 0 1
  • 什么是SQL数据库: SQL是Structured Query Language(结构化查询语言)的缩写。SQL是...
    西贝巴巴阅读 1,906评论 0 10
  • 一. Java基础部分.................................................
    wy_sure阅读 3,874评论 0 11
  • 2月28日,东煤支行营业室召开夕会,马行长,客户部张经理参加会议。夕会中,营业室大堂经理详细解读了上级行下发的关...
    8b05cd2a73a0阅读 387评论 0 0