truncate delete drop三者的区别

truncate事务不能回滚,delete能够事务回滚。truncate与不带where语句的delete作用相类似,因为truncate使用系统和事务日志比较少,所以效率比一行行删除语句的delete效率要高的多。

truncate删除表内容,释放表内容,不删除表结构定义。

delete删除表内容,不释放表空间,不删除表结构定义。

drop删除表内容,释放表空间,删除表结构定义。

时间: 2024-10-11 18:24:40

truncate delete drop三者的区别的相关文章

Truncate Delete Drop命令的区别 .

truncate和不带where子句的delete, 以及drop都会删除表内的数据 不同点: 1. 从删除内容上区分:    truncate和 delete只删除数据不删除表的结构(定义) drop语句将删除表的结构.被依赖的约束(constrain),触发器(trigger),索引(index); 依赖于该表的存储过程/函数将保留,但是变为invalid状态. 2.从语句类型上来区分:   delete语句是dml,这个操作会放到rollback segement中,事务提交之后才生效;如

SQL大圣之路笔记——SQL TRUNCATE,DELETE,DROP

TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行.但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少. DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项.TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放. TRUNCATE,DELETE,DROP放在一起比较:TRUNCATE TABLE:删除内容.释放空间但不删除定义.D

【转】truncate delete drop

1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 2.drop.truncate都是DDL语句(数据定义语言),执行后会自动提交. 不同点: 1. truncate 和 delete 只删除数据不删除表的结构(定义)drop 语句将删除表的结构被依赖的约束(constrain).触发器(trigger).索引(index):依赖于该表的存储过程/函数将保留,但是变为 invalid 状态. 2. delete 语句是数据库操作语言(dml),这个操作会放到

TRUNCATE,DELETE,DROP的区别

https://zhidao.baidu.com/question/171481100.html TRUNCATE   清空数据和数据占用空间  不删除表结构 DELETE        清空数据,不清掉数据占用的空间,不删除表结构 DROP           删除表结构,数据,以及释放空间

drop、delete和truncate三者的区别

相同点: 1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 2.drop.truncate都是DDL语句(数据定义语言),执行后会自动提交. 不同点: 1. truncate 和 delete 只删除数据不删除表的结构(定义)drop 语句将删除表的结构被依赖的约束(constrain).触发器(trigger).索引(index):依赖于该表的存储过程/函数将保留,但是变为 invalid 状态. 2. delete 语句是数据库操作语言(dml),这个

oracle中delete drop truncate的用法和区别

数据库的运维中,经常会遇到delete drop truncate的操作,那么如何去把握它们的用法和区别呢? 比如当数据库空间爆满,已经增长到存储空间单个存储文件的最大值32G.你需要通过一些办法释放掉表空间或者扩容表空间来解决问题. 一般当系统中大量使用分区表,而针对分区表清除数据,是不会释放表空间的,必须把分区drop掉,才会释放空间. 下面我们具体了解一下这三个命令: 一.delete 1.delete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在r

oracle中delete、truncate、drop的区别

oracle中delete.truncate.drop的区别 标签: deleteoracletable存储 2012-05-23 15:12 7674人阅读 评论(0) 收藏 举报  分类: oracle(2)  版权声明:本文为博主原创文章,未经博主允许不得转载. 一.delete 1.delete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间中以便进行回滚(rollback)和重做操作,但要注意表空间要足够大,需要手动提交(c

PLSQL_标准删除的方式Delete/Drop/Truncate区别和比较(概念)

2014-06-02 BaoXinjian 一.总论 1. Delete 2. Drop 3. Truncate 4. 例子:一亿条数据中如何删除其中的不符合条件的9999万条,保留剩余部分 二.具体分析 1. Delete / Drop / Truncate 删除方式的区别 (1).删除数据及表定义 truncate和 delete只删除数据不删除表的结构(定义)          drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index); 依

详解Oracle中 DELETE、TRUNCATE 和 DROP 的区别

前言 以前做项目的时候,很少关注知识点中比较细节的东西,正好今天有这个机会,就把 Oracle 中几个常用的函数区分一下. 语法 delete from table_name truncate table table_name drop table table_name 区别 delete from后面可以写条件,truncate不可以,drop后边一般也不写条件. delete from记录是一条条删的,所删除的每行记录都会进日志,而truncate一次性删掉整个页,因此日志里面只记录页释放,