首页 > 其他分享 >Drop 、Delete、Truncate的区别是什么

Drop 、Delete、Truncate的区别是什么

时间:2024-03-25 10:44:53浏览次数:23  
标签:city truncate Truncate Drop MogDB test delete Delete

Drop 、Delete、Truncate 的区别是什么?
DROP 删除表结构和数据,truncate 和 delete 只删除数据
truncate 操作,表和索引所占用的空间会恢复到初始大小;delete 操作不会减小表或索引所占用的空间;drop 操作释放表或索引的占用空间。
truncate 和 drop 是 DDL,操作立即生效,delete 是 DML,手动提交操作才生效。delete 操作可以结合 where 条件,并且删除操作会被记录到日志,后续可以回滚恢复。
一般速度上来说,drop>truncate>delete
truncate 只能对 table,delete 可以是 table 和 view
示例

MogDB=# select * from test_city;
id | city
----+-----------
1 | 上海
2 | 北京
3 | 广州
4 | 猋
5 | 巭
6 | 孬
7 | 舙
8 | 畾
9 | 皛
10 | 龘
11 | 孨
12 | 毳
13 | 雥
14 | 飍
15 | 飝
(15 rows)
MogDB=# Delete from test_city where city = '上海';
DELETE 1
MogDB=# select * from test_city;
id | city
----+-----------
2 | 北京
3 | 广州
4 | 猋
5 | 巭
6 | 孬
7 | 舙
8 | 畾
9 | 皛
10 | 龘
11 | 孨
12 | 毳
13 | 雥
14 | 飍
15 | 飝
(14 rows)
MogDB=# TRUNCATE test_city;
TRUNCATE TABLE
MogDB=# select * from test_city;
id | city
----+------
(0 rows)

MogDB=# drop table test_city;
DROP TABLE

标签:city,truncate,Truncate,Drop,MogDB,test,delete,Delete
From: https://www.cnblogs.com/helloopenGauss/p/18093889

相关文章

  • 6.4 Dropout正则化
    1、DropoutDropout是一种正则化技术,通过防止特征的协同适应,可用于减少神经网络中的过拟合。Dropout的效果非常好,实现简单且不会降低网络速度,被广泛使用。特征的协同适应指的是在训练模型时,共同训练的神经元为了相互弥补错误,而相互关联的现象,在神经网络中这种现象会变得尤其......
  • ASPNET MVC POST DELETE PUT 请求返回 400 (Bad Request)
    近日遇到 POSTDELETEPUT请求返回400(BadRequest),而GET请求正常的情况经几日排查,发现是【防止ASP.NETMVC应用程序中的跨站点请求伪造(CSRF)攻击】导致的解决方法:在请求头中加入 RequestVerificationToken@injectMicrosoft.AspNetCore.Antiforgery.IAntif......
  • C++内置 new /delete 运算符浅析
    全文目录malloc()/free()原型解析简化版本用法举例new/delete静态/动态类型new/delete运算符原型常用但没有注意区分的例子使用new分配对象的生存期那new/delete都做什么事呢几个注意点写在最后malloc()/free()提到new/delete运算符就不得不说malloc()/f......
  • androidstudio Unable to delete directory E:/xxxxx
    一、概述在使用AndroidStudio运行项目的时候,有时候会出现UnabletodeletedirectoryE:/xxxxx会提示某一个文件无法删除,导致clean和重新运行都会失败。二、解决办法导致这个问题的原因是可能有两个虚拟机同时使用了该文件。第一种情况:1.打开了......
  • FireDAC中官方SQL语句增insert,查Select,删delete,改update语句写法(20)
    procedureTfrmGettingStarted.btnInsertClick(Sender:TObject);variID:Integer;beginifnotFDconnection1.ConnectedthenExit;//Insertarecord增FDconnection1.ExecSQL('insertintoCategories(CategoryName,Description,Picture)'......
  • 捉虫日记 | MySQL 8.0从库某些情况下记录重放的CREATE TABLE、DROP TABLE语句到慢日志
    作者:卢文双资深数据库内核研发本文首发于2023-11-3020:47:35https://dbkernel.com问题描述当主从复制采用binlog的行模式时,如果从库启用slow_query_log、log_slow_replica_statements且从库重放CREATETABLE、DROPTABLE时因特殊情况(比如被从库其他SQL占用MDL......
  • unicloud delete 删除
    delete删除unicloud删除大概分为两种一种是通过指定文档ID删除语法如下collection.doc(_id).remove()还有一种是条件查找文档然后直接批量删除语法如下collection.where().remove()反正总归是先查找到指定数据,然后使用remove()函数删除示例如下collection.d......
  • Web3系列之2-Grass小草撸Airdrop
    0、有wifi就能zuanqian,现在每积分0.003......
  • 滴水逆向笔记系列-c++总结4-41.new-delete-vector-42.链表
    第四十课c++8new-delete-vector1.内存空间复习在类外函数外的变量就是全局变量,程序一编译地址就已经确定了的临时数据,参数和局部变量就是在堆栈里而使用malloc函数动态申请的则是在堆里2.跟踪调试反汇编函数我们调用malloc函数申请内存,但是不是malloc一个函数完成整个......
  • cdkdroplist,调整button排序和位置问题
    buttonenhancement;简单做个记录,给自己看的哈哈!!!应用场景由于cdkdroplist多行时的item移动难用的一批,跟需求讨论决定搞成单行的滚动条;好了开干,玩的就是真实。item少的时候就不说了,正常。当item多时需要滚动,开始操作:超出文本滚动,不换行...等等,原本根据配置的居左居右咋办。原......