Truncate和Delete的区别

2023-11-01

1、表和索引所bai占空间。当表被truncate 后,这个表和索引所占du用的空间会恢复到初始zhi大小,delete操作不dao会减少表或索引所占用的空间。

2、应用范围。truncate 只能对table;delete可以是table和view。

3、truncate 和delete只删除数据, drop则删除整个表(结构和数据)。

4、delete语句为dml(data maintain language),这个操作会被放到 rollback segment中,事务提交后才生效。如果有相应的 tigger,执行的时候将被触发。truncate是dll(data define language),操作立即生效,原数据不放到 rollback segment中,不能回滚。

5、在没有备份情况下,谨慎使用 truncate。要删除部分数据行采用delete且注意结合where来约束影响范围。回滚段要足够大。若想保留表而将表中数据删除,如果于事务无关,用truncate即可实现。如果和事务有关,或老是想触发trigger,还是用delete。

6、truncate table 表名 速度快,而且效率高,因为: 

truncate table 在功能上与不带 where 子句的 delete 语句相同:二者均删除表中的全部行。但 truncate table 比 delete 速度快,且使用的系统和事务日志资源少。

delete 语句每次删除一行,并在事务日志中为所删除的每行记录一项。truncate table 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。 

7、truncate table 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 delete。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Truncate和Delete的区别 的相关文章

随机推荐

  • Java基础15--面向对象:接口

    Java基础15 面向对象 接口 文章目录 Java基础15 面向对象 接口 概述 接口与类相似点 接口与类的区别 接口特性 抽象类和接口的区别 接口的声明 接口的实现 接口的继承 接口的多继承 标记接口 概述 接口 英文 Interfac
  • MakeFile学习1-原理

    1 静态库用于动态库原理和编译流程 编译分为四大过程 预编译 编译 汇编 链接 预编译 完成宏替换 文件引入 以及去除空行 注释等 为下一步编译做准备 也就是对各种预编译命令做处理 包括头文件的包含 宏定义的拓展 条件编译的选择等 选项 E
  • 哈希表:线性探测法和链地址法求查找成功与不成功的平均查找长度

    哈希表 线性探测法和链地址法求查找成功与不成功的平均查找长度 了解ASL的公式 线性探测法求ASL 链地址法求ASL 了解ASL的公式 查找成功时 ASL 1 n frac 1 n n1
  • 训练VainF/DeepLabV3Plus-Pytorch

    conda activate pytorch cd DeepLabV3plus Pytorch master 先打开visdom 指定端口号 和运行指令里的端口号一致 python m visdom server p 28333 进行训练
  • Android面试心得

    过年回来到现在也一个月了 这段时间一直没写文章 这是因为我准备换工作了 一直在面试 也面试了四五家 但是效果都不是很好 虽然如此 但也算收获了一些经验 我就将我面试遇到的问题记录下来 与大家一起分享吧 本人是做游戏sdk的 所以一些问题会偏
  • JavaScript编程语言-交互:alert、prompt 和 confirm类型转换,字符串转换,数字型转换,布尔型转换,

    交互 alert prompt 和 confirm 由于我们将使用浏览器作为我们的演示环境 让我们看几个与用户交互的函数 alert prompt 和confirm alert 这个我们前面已经看到过了 它会显示一条信息 并等待用户按下 O
  • 【著名博客搬运翻译】无限过程式生成城市使用波函数坍缩算法

    Infinite procedurally generated city with the Wave Function Collapse algorithm 英文原址 https marian42 de article wfc 这是一个游戏
  • 虚拟机ubuntu18.04安装AoiAWD

    AoiAWD 轻量级EDR系统 AoiAWD 是一个由Aodzip 安恒信息 海特实验室研究员 HAC战队成员 维护的一个针对于CTF AWD模式的开源项目 专为比赛设计 便携性好 低权限运行的EDR系统 任何人都可以在 GNU AGPL
  • unity解决射线穿透UGUI的问题

    if Input GetMouseButtonDown 0 EventSystem current IsPointerOverGameObject Ray ray Camera main ScreenPointToRay Input mou
  • STL中的list容器

    以下转自http www cnblogs com BeyondAnyTime archive 2012 08 10 2631191 html STL中的list容器的一点总结 1 关于list容器 list是一种序列式容器 list容器完成
  • Excutors 线程池

    实例一 作为服务端 使用线程池接收多个客户端的TCP请求 String port 9015 ServerSocket serverSocket new ServerSocket port Executor exe Executors new
  • Base64加密解密算法【js】

    废话不多说 上代码 var Base64 private property keyStr ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 public metho
  • 最小二乘法(Least square method)

    最小二乘法是在线性回归模型最小化均方误差时使用 其实就是对误差函数求导数 然后让其等于0 然后解出使得误差最小 本篇文章讲解最小二乘法 首先声明 此篇的内容是来自 马同学高等数学 微信公众号的内容 目录 1 日用而不知 2 最小二乘法 3
  • 模板--类型萃取

    当我们在实现数据结构vector时 我们发现使用mencpy时只能实现基本类型的拷贝 而不能实现自定义类型的拷贝 比如说字符串类型 这问题如何解决呢 在学习了模板和基于模板的类型萃取之后 我们就有方法是在实现基本类型的拷贝时使用memcpy
  • iOS 网络

    1 http介绍 请求报文 响应报文 2 http的请求方式有哪些 get post head put delete options 3 get和post方式的区别 rfc官方文档 get请求参数以 分割拼接到url后面 post请求参数在
  • WPF 下的 VlcControl 控件,播放视频过程中,闪黑屏问题的排查与解决方法

    在Wpf 下 使用 VlcControl 控件 可以实现很多强大的播放功能和解码功能 但是在使用过程中发现当视频播放时 会有预加载时间 导致出现闪黑屏的情况 如下面gif所展示 这种情况其实是VlcControl视频控件在预加载视频 从而导
  • Linux shell上传/下载命令

    sz 和 rz sz命令发送文件到本地 sz filename rz命令本地上传文件到服务器 rz 执行该命令后 在弹出框中选择要上传的文件即可
  • ADB error: device unauthorized 问题解决

    error device unauthorized This adb server s ADB VENDOR KEYS is not set Try adb kill server if that seems wrong Otherwise
  • 学习笔记(材料力学组合梁实验报告图表绘制)

    一些反思 虽然大学里做了一些物理和力学实验 会进行基本的数据处理 但是其实还是很皮毛 深以为不可得过且过 本着钻研问题 深入研究excel制图的角度开启此篇章 一 需求 1 实验时本人所测量的 叠梁和楔块梁的实验应力值 表格化 对应力 高度
  • Truncate和Delete的区别

    1 表和索引所bai占空间 当表被truncate 后 这个表和索引所占du用的空间会恢复到初始zhi大小 delete操作不dao会减少表或索引所占用的空间 2 应用范围 truncate 只能对table delete可以是table和