delete和drop和truncate的区别

类别deletetruncatedrop
语言DMLDDLDDL
删除方式主要用于删除部分数据(某行)删除内容、释放空间
但不删除定义(保留表的数据结构)
删除一切,释放空间
事务可以使用rollback语句回滚不能rollback回滚不能rollback回滚
触发器可以触发triggers无法触发triggers无法触发triggers
效率最低,因为是逻辑删除且逐行删除高于delete,对整表删除最高,直接全部删除(包括
索引,内容,结构,定义)

场景:

当你不再需要该表时, 用 drop;

当你仍要保留该表,但要删除所有记录时, 用 truncate;

当你要删除部分记录时, 用 delete。

DDL和DML的定义和区别:

DML(Data Manipulation Language)数据操作语言:

适用范围:对数据库中的数据进行一些简单操作,如insert,delete,update,select等.

DDL(Data Definition Language)数据定义语言:

适用范围:对数据库中的某些对象(例如,database,table)进行管理,如Create,Alter和Drop.

区别:

1.DML操作是可以手动控制事务的开启、提交和回滚的。

2.DDL操作是隐性提交的,不能rollback!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值