首页 > 数据库 >数据库中的drop、truncate、 delete的区别

数据库中的drop、truncate、 delete的区别

时间:2023-03-19 09:33:22浏览次数:49  
标签:truncate TRUNCATE drop TABLE delete DELETE

  • drop直接删掉表。
  • truncate删除表中数据,再插入时自增长id又从1开始。
  • delete删除表中数据,可以加where字句。

DELETE语句会记录日志以便进行回滚操作;TRUNCATE TABLE不会记录日志,在删除的过程中不会激活与表有关的删除触发器,执行速度快。

当表被TRUNCATE 后,这个表和索引所占用的空间会恢复到初始大小,而DELETE操作不会减少表或索引所占用的空间。drop语句将表所占用的空间全释放掉。

TRUNCATE 只能对TABLE;DELETE可以是table和view。

TRUNCATE 和DELETE只删除数据,而DROP则删除整个表(结构和数据)。

delete语句为DML;truncate、drop是DLL

对于有FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。

标签:truncate,TRUNCATE,drop,TABLE,delete,DELETE
From: https://www.cnblogs.com/xfeiyun/p/17232476.html

相关文章

  • target.closest妙用:UI(click/mousemove/drag/drop)事件元素查找捷径
    首先看下MDN:https://developer.mozilla.org/en-US/docs/Web/API/Element/closest在jQuery时代,这个非常常见$( document ).bind("click", function( e ) {    ......
  • target.closest妙用:UI(click/mousemove/drag/drop)事件元素查找捷径
    首先看下MDN:​​https://developer.mozilla.org/en-US/docs/Web/API/Element/closest​​在jQuery时代,这个非常常见$(document).bind("click",function(e){$(e.t......
  • C++ delete语句
    C++中的五种内存在C++中内存分为五个区:堆、栈、自由存储区、全局/静态存储区和常量存储区。堆区:用户使用new获得的内存在这里。用户需要自行管理其声明周期,也就是说一个......
  • gin跨域(CROS)时GET和POST正常但PUT和DELETE被阻止
    问题表现同一个项目请求同一个服务时,Get和Post请求正常,但是Put和Delete一直报跨域错误的问题AccesstoXMLHttpRequestat'http://127.0.0.1:8011/api/organization'fr......
  • ElasticSearch 实现分词全文检索 - delete-by-query
    目录ElasticSearch实现分词全文检索-概述ElasticSearch实现分词全文检索-ES、Kibana、IK安装ElasticSearch实现分词全文检索-Restful基本操作ElasticSearch......
  • GridView中DropDownList传参
    <asp:TemplateFieldHeaderText="是否空闲"><ItemTemplate>&nbsp;<asp:HiddenFieldID="hidKongXian"Va......
  • UF删除实体或者部件属性UF_ATTR_delete_all
    voidSEModifyAttX::delAtt()//删除实体或者部件事例属性{ try { //获取UI界面的属性 //获取选择对象TAG PropertyList*blockxuanzhePros=bodySelect0->GetPropert......
  • 380. Insert Delete GetRandom O(1)
    380.InsertDeleteGetRandomO(1)标签(空格分隔):leetcodearraymedium题目DesignadatastructurethatsupportsallfollowingoperationsinaverageO(1)......
  • opensuse-microos-delete-snapshots
    概述不可变操作系统opensusemicroos,解决删除历史快照回滚MicroOS是个不可变的操作系统,可轻松回滚不可变,磁盘上不会有更改可重启,到旧的BTRFS快照来回滚envopens......
  • TRUNCATE、DELETE、DROP的区别
    Truncate、delete、drop区别一、Truncate使用truncateuser_table;清空表的数据,但不破坏表结构二、delete使用deletefromuser_tablewhereid=1;删除指定数据,要......