首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >SQL删除语句_SQL常用命令

SQL删除语句_SQL常用命令

作者头像
全栈程序员站长
发布2022-11-10 19:34:32
发布2022-11-10 19:34:32
2.6K0
举报

大家好,又见面了,我是你们的朋友全栈君。

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

DELETE语句的基本语法是:

DELETE FROM <表名> WHERE …;

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

DELETE FROM employees WHERE employee_id = 100;

— 查询结果:

在这里我们发现DELETE语句的WHERE条件也是用来筛选需要删除的行,因此和UPDATE类似,DELETE语句也可以一次删除多条记录:

DELETE FROM employees WHERE employee_id >= 101 and employee_id <= 105;

— 查询结果:

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

— 删除employee_id=999的记录

–查询结果:

和UPDATE类似,不带WHERE条件的DELETE语句会删除整个表的数据:

DELETE FROM employees;

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

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

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

SQL> DELETE FROM employees WHERE employee_id=100;

Query OK, 1 row affected (0.01 sec)

SQL> DELETE FROM employees WHERE employee_id=999;

Query OK, 0 rows affected (0.01 sec)

另外如果要进行删除的这条数据在其他表中使用,并且建立了约束的话,是不能直接进行删除的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月28日 ,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档