首页 家电百科 实时讯息 常识
您的位置: 首页 > 常识 >

数据库删除语句过程(SQL中的delete操作从删除到跑路)

100次浏览     发布时间:2024-08-08 11:32:56    

所有对于数据的删除操作,都应该是慎重、慎重、再慎重的。

部分删除操作是无法回退的,甚至会导致数据库无法运行等重要灾难。

这让我想起了一句话,从删库到跑路,这不仅仅是一句玩笑话而已。

DELETE

以下面CUSTOMERS表为例

+----+----------+-----+-----------+----------+

| ID | NAME | AGE | ADDRESS | SALARY |

+----+----------+-----+-----------+----------+

| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |

| 2 | Khilan | 25 | Delhi | 1500.00 |

| 3 | kaushik | 23 | Kota | 2000.00 |

| 4 | Chaitali | 25 | Mumbai | 6500.00 |

| 5 | Hardik | 27 | Bhopal | 8500.00 |

| 6 | Komal | 22 | MP | 4500.00 |

| 7 | Muffy | 24 | Indore | 10000.00 |

+----+----------+-----+-----------+----------+//原文出自【易百教程】,商业转载请联系作者获得授权,非商业请保留原文链接:
https://www.yiibai.com/sql/sql-delete-query.html

1、下面语句根据查询条件,删除一行数据

DELETE FROM CUSTOMERS WHERE ID = 1;

2、下面语句删除全部数据

DELETE FROM CUSTOMERS;

DELETE操作可以说是安全的删除操作,因为它可以ROLLBACK;

也就是说如果你误操作,只要没有COMMIT,就可以把数据找回来。

而另一个删除操作TRUNCATE就没那么幸运了。

TRUNCATE

TRUNCATE只能用于删除整张表的数据,不支持WHERE子句

truncate table CUSTOMERS;

相对于delete语句,它有2点优势:

1、delete并不会释放表所占用的空间,而truncate会释放

2、使用 truncate table 删除全表数据速度更快

但是truncate 操作自动提交(COMMIT)的,也就是说执行了,数据就找不回来了。

DROP

DROP TABLE CUSTOMERS;

删除表,而不仅仅只有表数据。也就是说把整个表去掉,删除内容和定义,释放空间。

是三个删除操作中最彻底的,同样也是操作立即生效,没有回头路的。

DROP还可以用于删除索引DROP INDEX,删除数据库DROP DATABASE等操作。

总结

从安全性角度来说delete> truncate >drop,相反的,执行效率确是drop > truncate > delete。

总之还是一句话,慎重、再慎重。

相关文章
Riello壁挂炉|全国服务实时反馈-今-日-更-新
2025-04-20 21:02:27
BERETTA壁挂炉售后服务热线号码-全国各售后号码实时反馈-今-日-汇-总
2025-04-20 21:02:00
DE&E燃气灶售后服务号码及其服务网点介绍实时反馈-今-日-汇-总
2025-04-20 20:59:55
晨光保险柜400服务号码全国售后的热线实时反馈-今-日-更-新
2025-04-20 20:55:46
度园园保险柜400全国各售后服务热线号码实时反馈-今-日-汇-总
2025-04-20 20:55:39