oracle--delete truncate drop的区别】的更多相关文章

一张表几亿条数据.根据task_id删除几千万. delete删除后查询,发现查询速度还是没有变快.explain查看 rows并没有发生变化.查询速度肯定也不会变化.原因? truncate delete 与 drop的区别 三者均可删除数据表 TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行.但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少. DELETE 语句每次删除一行,并在事务日志中…
Same: delete/truncate/drop, all of them can support rollback/commit, the sample is as below: begin tran T1truncate table TestTable rollback/commit Difference: delete can support where clause, but truncate/drop cannot, that is because truncate/drop is…
注意事项 1.在oracle中数据删除后还能回滚是因为它把原始数据放到了undo表空间. 2.DML语句使用undo表空间,DDL语句不使用undo,  而delete是DML语句,truncate是DDL语句,另外DDL语句是隐式提交.所以truncate操用不能回滚,而delete操作可以. truncate与delete相同点:1 在oracle中删除表中的数据的方法有delete,truncate2 它们都是删除表中的数据,而不能删除表结构. truncate与delete之间的区别1:…
数据库删除语句 Drop/Delete/Truncate比较 Delete :删除数据表中的行(可以删除某一行,也可以在不删除数据表的情况下删除所有行). 删除某一行:Delete from 数据表名称 where 列名称=值: 删除所有行:Delete * from 数据表名称 Drop :删除数据表或数据库,或删除数据表字段. 删除数据库:drop database 数据库名称 删除数据表:(表的结构.属性.索引也会被删除) use 数据库名称 drop table 数据表1名称,数据表2名…
TRUNCATE TABLE 在功能上与不带 Where 子句的 Delete 语句相同:二者均删除表中的全部行.但 TRUNCATE TABLE 比 Delete 速度快,且使用的系统和事务日志资源少.          Delete 语句每次删除一行,并在事务日志中为所删除的每行记录一项.        TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放.        TRUNCATE TABLE 删除表中的所有行,但表结构及其列.约束.…
转自: http://www.cnblogs.com/HondaHsu/archive/2012/09/28/2707487.html 最近发现oracle中出现了这些奇怪的表名,上网查找后发现是oracle10g的回收站功能,并没有彻底的删除表,而是把表放入回收站,最后就出现了这样一堆奇怪的表名....     清除的方法如下:     purge table origenal_tableName;     purge index origenal_indexName;     查询垃圾信息,…
关于文章,本文是在网上查找资料整理而来,方便以后记忆 delete 命令删除的数据可以恢复, truncate 命令删除的数据是不可以恢复的,全删的那种 drop 命令删除的数据不可恢复,连表结构都删的那种 相同点 truncate 和不带 where 子句的 delete, 以及 drop 都会删除表内的数据. 不同点: 1. truncate 和 delete 只删除数据不删除表的结构,drop 语句将删除表的结构被依赖的约束(constrain), 触发器(trigger), 索引(ind…
关于update和alter: 百度知道上关于update和alter有一个很形象的总结: 一个表有很多字段,一个字段里有很多数据. 一个家有很多房间,一个房间里有很多家具. update是用来将衣柜改成书架的. alter是用来将厨房改成厕所的. 把卧室改成厕所: alter table 你家 change 厨房 厕所 varchar(8); 在你的家里面加一个厕所: alter table 你家add 厕所 varchar(8);(8表示厕所8平米) 修改厕所大小: alter table…
关于update和alter: 百度知道上关于update和alter有一个很形象的总结: 一个表有很多字段,一个字段里有很多数据. 一个家有很多房间,一个房间里有很多家具. update是用来将衣柜改成书架的. alter是用来将厨房改成厕所的. 把卧室改成厕所: alter table 你家 change 厨房 厕所 varchar(8); 在你的家里面加一个厕所: alter table 你家add 厕所 varchar(8);(8表示厕所8平米) 修改厕所大小: alter table…
相同点: 1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 不同点: 1. truncate 和 delete 只删除数据不删除表的结构(定义) drop 语句将删除表的结构被依赖的约束(constrain).触发器(trigger).索引(index):依赖于该表的存储过程/函数将保留,但是变为 invalid 状态. 2. delete 语句是数据库操作语言(dml),这个操作会放到 rollback segement 中,事务提交之后才生效:如果有相…