数据库删除语句drop和delete和truncate

一、 删除内容的不同:

drop:用于删除数据库(drop database 数据库名称)、删除数据表( use 数据库名称 drop table 数据表1名称,数据表2名)或删除数据表字段(use 数据库名称 alter table 数据表名称 drop column 字段名(列名称))。
delete:删除数据表中的行(某一行或所有行)
格式:delete from 表名称 where 列名称=值;
truncate:清空表数据,但不删除这个表,只是把里面存的数据内容清空掉了

二、语句类型的不同:
delete:是dml(数据库操作语言),这个操作会放到rollback segement(你在数据库中的一些存储空间,用来临时的保存当数据库数据发生改变时的先前值)中,事务提交之后才生效;如果有相应的trigger(触发器),执行的时候将被触发.
drop是ddl(数据库定义语言), 操作立即生效,原数据不放到rollback segment中,不能回滚. 操作不触发trigger.
truncate:删除表中的所有行,只删除数据,表的结构及其列约束依然保留。操作立即生效,不触发trigger;

三、删除速度的不同:
一般来说: drop>truncate>delete

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页