`

TRUNCATE和DELETE的几点区别

阅读更多
1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。
  2、TRUNCATE是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。
  3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。
  4、TRUNCATE不能触发任何DELETE触发器。  
  5、不能授予任何人清空他人的表的权限。   6、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。
  7、不能清空父表。

分享到:
评论

相关推荐

    sql中 truncate 和 delete 有什么区别

    在选择delete还是truncate时,需要考虑以下几点: * 如果需要记录每个删除的记录,可以选择delete语句。 * 如果需要快速删除大量记录,可以选择truncate语句。 * 如果需要触发delete触发器,可以选择delete语句。 *...

    浅析删除表的几种方法(delete、drop、truncate)

    您可能感兴趣的文章:数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较(实例说明)drop,truncate与delete的区别详解MySQL中DROP,TRUNCATE 和DELETE的区别实现mysql从零开始浅析drop user与delete from ...

    oracle数据操作和控制语言详解

    TRUNCATE 和 DELETE 都可以用来删除表中的数据,但它们有以下几点区别: * TRUNCATE 在各种表上无论是大的还是小的都非常快。 * TRUNCATE 是一个 DDL 语言,向其他所有的 DDL 语言一样,他将被隐式提交,不能对 ...

    MySQL面试题经典40问!(全).docx

    有关Mysql之前有单独写过几篇文章•一文详解脏...•truncate、delete与drop区别?•union与union all的区别?•group by 和 distinct 的区别?•Blob和text有什么区别?•常见的存储引擎有哪些?•myisam和innodb的区别

    mysql delete 多表连接删除功能

    在处理单个表时,`DELETE`语句的使用相对简单,而在多表环境中进行连接删除时,其复杂性和潜在影响则显著增加。这里我们将深入探讨`DELETE`语句的各种用法,特别是涉及多表连接删除的情况。 **单表删除** 对于单个...

    oracle面试题集锦

    本文将从多个方面对 oracle 的知识点进行总结,包括查找部门的前 2 名、事务概念、触发器的作用、实现索引的方式、view 的概念、 truncate 和 delete 的区别、数据库启动与关闭的步骤、删除重复记录、授予权限等。...

    ORACLE数据库面试题解答-DBA数据库管理员JAVA程序员架构师必看.pdf,这是一份不错的文件

    7. truncate 和 delete 命令的区别:truncate 是 DDL 操作,不需要 rollback segment,而 delete 是 DML 操作,需要 rollback segment。 知识点:truncate、delete、DDL 操作、DML 操作 8. 使用索引的理由:快速...

    DB2清空表里所有数据.doc

    综上所述,DB2 中清空表数据涉及了 DELETE 和 TRUNCATE 两种主要的 SQL 语句,以及如何处理可能出现的各种错误和异常。在实际操作中,根据具体情况选择合适的方法,并确保遵循最佳实践来保证数据的安全性。

    Oracle 20 道面试题及答案.docx

    truncate 和 delete 命令的区别 truncate 和 delete 命令都可以用来删除表中所有的记录。区别在于:truncate 是 DDL 操作,它移动 HWK,不需要 rollback segment。而 Delete 是 DML 操作,需要 rollback segment 且...

    oracle truncate恢复

    在Oracle中,`TRUNCATE`是一种快速清空表的方法,它不记录删除操作,因此比`DELETE`语句更快。然而,这也意味着一旦执行`TRUNCATE`,默认情况下无法通过回滚事务来恢复数据。但在某些情况下,如表所在的空间未被重用...

    计算机数据库面试重要知识点.pdf

    计算机数据库面试重要知识点包括存储过程、索引、事务、乐观锁和悲观锁、使用索引查询、drop、delete 与 truncate 的区别、超键、候选键、主键、外键等。这些建议是数据库面试的重要知识点,了解这些知识点对数据库...

    我收集的oracle经典面试题.docx

    * truncate和delete命令的区别:truncate是DDL操作,不需要rollback segment,而delete是DML操作,需要rollback segment且花费较长时间。 七、其他 * 两种检查表结构的方法:DESCRIBE命令和DBMS_METADATA.GET_DDL...

    Oracle面试题 oracle学习题

    7. 比较truncate和delete 命令 8. 使用索引的理由 9. 给出在STAR SCHEMA中的两种表及它们分别含有的数据 10. FACT Table上需要建立何种索引? 11. 给出两种相关约束? 12. 如何在不影响子表的前提下,重建一个母...

    mysql面试题 包含 初级 中级 高级 各级别知识点.rar

    drop、truncate、 delete区别 数据库三范式是什么? union和union all有什么不同? char、varchar2、varchar有什么区别? 合并查询有哪些? SQL语句执行顺序 null的含义 MySQL、SqlServer、oracle写出字符存储...

    Oracle面试常见问题.doc

    7. truncate 和 delete 命令的区别 truncate 是 DDL 操作,它移动 HWK,不需要 rollback segment。而 Delete 是 DML 操作,需要 rollback segment 且花费较长时间。 8. 使用索引的理由 快速访问表中的 data block...

    Oracle数据库DBA面试题及答案_经典.docx

    7. truncate和delete命令的区别: truncate是DDL操作,它移动HWK,不需要rollback segment。delete是DML操作,需要rollback segment且花费较长时间。 8. 使用索引的理由: 快速访问表中的数据块。 9. STAR ...

    华为面试题附答案OracleDBA数据库管理员JAVA程序员架构师必看.doc

    下面是 Oracle DBA 面试题解析,涵盖了数据库管理、索引、分区表、物理文件、SGA、DECODE 函数、DELETE 和 TRUNCATE 的区别、事务管理等多方面的知识点。 一、数据库管理 * 表空间管理方式有哪几种?数据字典管理...

Global site tag (gtag.js) - Google Analytics