首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Oracle中Drop和Drop Purge之间的区别

在Oracle数据库中,Drop和Drop Purge是两种不同的操作,它们在删除数据库对象时的处理方式有所不同。

Drop

Drop操作用于删除数据库对象,但不会立即从磁盘中删除其相关的数据。相反,它将对象标记为已删除,并在日后的某个时间点自动删除。这种方式可以防止数据丢失,但可能导致磁盘空间的浪费。

Drop Purge

Drop Purge操作用于删除数据库对象,并立即从磁盘中删除其相关的数据。这种方式可以节省磁盘空间,但可能导致数据丢失。因此,在使用Drop Purge操作时,需要谨慎操作。

应用场景

Drop操作适用于需要保留数据的场景,例如在开发过程中删除不再需要的对象。而Drop Purge操作适用于需要彻底删除数据的场景,例如在数据库迁移时。

推荐的腾讯云相关产品

腾讯云提供了多种云计算服务,可以满足不同的业务需求。以下是一些可能与Oracle相关的腾讯云产品:

  • 腾讯云数据库:提供了MySQL、PostgreSQL、MongoDB等多种数据库服务,可以满足不同的数据存储需求。
  • 腾讯云Oracle数据库:提供了Oracle数据库的云化服务,可以满足企业对Oracle数据库的需求。
  • 腾讯云容器服务:提供了容器化的云计算服务,可以帮助企业快速构建、部署和管理应用程序。
  • 腾讯云云原生:提供了一系列云原生相关的服务,包括Kubernetes、Serverless等,可以帮助企业构建高可用、高可扩展的应用程序。

产品介绍链接地址

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

drop、truncatedelete区别

,并且同时将该行删除操作记录在redoundo表空间中以便进行回滚(rollback)重做操作,但要注意表空间要足够大,需要手动提交(commit)操作才能生效,可以通过rollback撤消操作...delete可根据条件删除表满足条件数据,如果不指定where子句,那么删除表中所有记录。 delete语句不影响表所占用extent,高水线(high watermark)保持原位置不变。...三、drop drop是DDL,会隐式提交,所以,不能回滚,不会触发触发器。 drop语句删除表结构及所有数据,并将表所占用空间全部释放。...总结: 1、在速度上,一般来说,drop> truncate > delete。 2、在使用droptruncate时一定要注意,虽然可以恢复,但为了减少麻烦,还是要慎用。...3、如果想删除部分数据用delete,注意带上where子句,回滚段要足够大; 如果想删除表,当然用drop; 如果想保留表而将所有数据删除,如果事务无关,用truncate即可; 如果事务有关

51330

MySQLdrop、delete与truncate区别

MySQLdrop、delete与truncate区别 在MySQLdrop、deletetruncate是用来删除表数据或整个表命令。...虽然它们都有删除数据功能,但在实际使用,它们有一些不同用途效果。在本文中,我们将讨论这三个命令区别,以及何时应该使用哪个命令。 1....它语法如下: TRUNCATE TABLE tablename; TRUNCATE命令与DELETE命令类似,都可以删除表数据。然而,它们之间有一些重要区别。...示例演示 为了更好地理解这三个命令区别,我们来通过示例演示它们在实际使用效果。 假设我们有一个名为"students"表,它包含了学生姓名、年龄成绩。...结论 在MySQLDROP、DELETETRUNCATE是用于删除表数据或整个表命令。

43120

MySQL之delete userdrop user 区别

MySQL之delete userdrop user 区别 Tip:在MySQL,我们经常需要创建用户删除用户,创建用户时,我们一般使用create user或者grant语句来创建,create...,那么这两种方法有什么区别呢?...mysql.user表这两个用户,在去查看用户表,我们发现: mysql 15:20:43>>delete from mysql.user where user='yeyz'; Query OK,...再开看看drop方法删除用户 首先,我们删除掉刚才那两个用户,然后使用show grants for语句查看他们权限: mysql ::>>drop user yeyz@'%'; Query OK...,系统判定这种操作没有权限,直接拒绝了,这就说明使用drop user方法删除用户时候,会连通db表权限表一起清除,也就是说删比较干净,不会对以后用户产生任何影响。

1.3K10

如何恢复oracle误删除表(drop)?

恢复表: flashback table test_drop to before drop; 或者: flashback table "BIN$b+XkkO1RS5K10uKo9BfmuA==$0..." to before drop; 注意: 必须9i或10g以上版本支持,flashback无法恢复全文索引 详解: 以下是一个不该发生却经常发生情况:用户删除了一个非常重要表 ― 当然是意外地删除...(在某些时候,这个不幸用户可能就是 DBA!) Oracle9i Database 推出了闪回查询选项概念,以便检索过去某个时间点数据,但它不能闪回 DDL 操作,如删除表操作。...唯一恢复方法是在另一个数据库中使用表空间时间点恢复,然后使用导出/导入或其他方法,在当前数据库重新创建表。...这一过程需要 DBA 进行大量工作并且耗费宝贵时间,更不用说还要使用另一个数据库进行克隆。

2K20

MySQLdropdelete删用户场景

关于用户创建文章,之前写过几篇《MySQL创建用户提示1396》《小白学习MySQL - 不同版本创建用户些许区别》。 碰巧看到技术社群这篇文章《同样是删用户,为啥还有差别?》...#'; Query OK, 0 rows affected (0.01 sec) 通过上面的例子发现,第一次创建用户testuser01之后,使用drop方式将用户删除,我们重新创建用户,正常创建用户成功...我们知道MySQL一个新连接,会为新连接维护一个线程对象,然后从权限数组里查到这个用户权限,为了获取该用户可完成权限,还需要将权限值拷贝到这个线程对象。...回到前面的例子当中,delete操作相当于对这张表删除一条记录,当内存并未删除,这也就为什么导致了delete操作后,无法重新创建原因了,而drop操作是将表内记录内存内容一并删除。...如果您认为这篇文章有些帮助,还请不吝点下文章末尾"点赞""在看",或者直接转发pyq,

15620

如何恢复oracle误删除表(drop)?

恢复表: flashback table test_drop to before drop; 或者: flashback table "BIN$b+XkkO1RS5K10uKo9BfmuA==$0"...to before drop; 注意: 必须9i或10g以上版本支持,flashback无法恢复全文索引 详解: 以下是一个不该发生却经常发生情况:用户删除了一个非常重要表 ― 当然是意外地删除...(在某些时候,这个不幸用户可能就是 DBA!) Oracle9i Database 推出了闪回查询选项概念,以便检索过去某个时间点数据,但它不能闪回 DDL 操作,如删除表操作。...唯一恢复方法是在另一个数据库中使用表空间时间点恢复,然后使用导出/导入或其他方法,在当前数据库重新创建表。...这一过程需要 DBA 进行大量工作并且耗费宝贵时间,更不用说还要使用另一个数据库进行克隆。

1.5K30

面试突击58:truncate、deletedrop6大区别

在 MySQL ,使用 truncate、delete drop 都可以实现表删除,但它们 3 个使用场景执行效果完全不同,接下来我们来盘点一下。...truncate、delete、drop区别概述 它们 3 个区别如下表所示: 区别drop truncate delete 执行速度 快 较快 慢 命令分类 DDL(数据定义语言) DDL(数据定义语言...删除条件(where) 不能用 不能用 可使用 回滚 不可回滚 不可回滚 可回滚 自增初始值 - 重置 不重置 接下来我们用案例来演示一下它们区别。...总结 truncate、drop delete 区别主要有以下 6 点: 执行速度:drop > truncate > detele。...delete truncate 只删除表数据,而 drop 会删除表数据表结构以及表索引、约束触发器。

1K21

MySQL数据库:drop、truncate、delete区别

1、删除速度:drop>truncate>delete; 2、删除方式: (1)执行delete操作时,每次从表删除一行,并且同时将该行删除操作记录在日志文件。...(2)truncate通过释放存储表数据所用页来删除数据,一次性删除表中所有记录,不会将删除数据记录在日志文件,只在日志文件记录页释放,使用系统事务日志资源少,所以执行速度比delete快...(3)drop则删除整个表结构和数据,但是被依赖约束、触发器、索引、依赖于该表存储过程、函数将被保留,但其状态会变为invalid 3、删除后,表索引所占空间: (1)delete操作不会减少表或索引所占用空间...(3)drop语句将表所占用空间全释放掉。...5、使用场景: (1)如果想删除表,当然用drop; (2)如果想保留表而将所有数据删除,而且事务无关,用truncate即可; (3)如果事务有关,或者想触发trigger,还是用delete;

1.3K30

Rustmove、copy、clone、drop闭包捕获

本文中变量,指的是通过如下代码定义常量a变量b。实例指的是绑定到ai32类型在stack内存数据,绑定到b变量String类型在stack内存heap内存数据。...这是与c++最大区别,从c++11开始,右值引用出现,才有了move语义。但rust天生就是move语义。...也就是说CopyDrop两个trait对同一个类型只能有一个,鱼与熊掌不可兼得。...如果变量没有Drop trait,那就只收回stack内存。 正是由于在Drop::drop方法会做资源清理,所以CopyDrop trait只能二选一。...("moto", &s); } 最后总结 move、copy、clone、drop闭包捕获是rust基本概念,代码过程随时要清楚每个变量变化。

1.4K10

delete、truncate、drop区别有哪些,该如何选择

trigger; 2、在 InnoDB ,DELETE其实并不会真的把数据删除,mysql 实际上只是给删除数据打了个标记为已删除,因此 delete 删除表数据时,表文件在磁盘上所占空间不会变小...7、delete 操作是一行一行执行删除,并且同时将该行删除操作日志记录在redoundo表空间中以便进行回滚(rollback)重做操作,生成大量日志也会占用磁盘空间。...4、小心使用 truncate,尤其没有备份时候,如果误删除线上表,记得及时联系中国民航,订票电话:400-806-9553 3、drop Drop table Tablename 1、drop:...InnoDB MyISAM; drop 语句将删除表结构被依赖约束(constrain)、触发器(trigger)、索引(index); 依赖于该表存储过程/函数将保留,但是变为 invalid...3、小心使用 drop ,要删表跑路兄弟,请在订票成功后在执行操作!

40320

delete、truncate、drop区别有哪些,该如何选择

DML操作语言,只删除数据不删除表结构,会走事务,执行时会触发trigger; 2、在 InnoDB ,DELETE其实并不会真的把数据删除,mysql 实际上只是给删除数据打了个标记为已删除,因此...delete 删除表数据时,表文件在磁盘上所占空间不会变小,存储空间不会被释放,只是把删除数据行设置为不可见。...7、delete 操作是一行一行执行删除,并且同时将该行删除操作日志记录在redoundo表空间中以便进行回滚(rollback)重做操作,生成大量日志也会占用磁盘空间。...4、小心使用 truncate,尤其没有备份时候,如果误删除线上表,记得及时联系中国民航,订票电话:400-806-9553 3、drop Drop table Tablename 1、drop:...InnoDB MyISAM; drop 语句将删除表结构被依赖约束(constrain)、触发器(trigger)、索引(index); 依赖于该表存储过程/函数将保留,但是变为 invalid

42730

filter:drop-shadow与box-shadow区别

而filterdrop-shadowIE13才开始支持,移动端Android4.4才开始支持,细想一下,其实离在移动端愉快使用就差一口气,明天今天,大家说不定就在载歌载舞了。...二、同样参数值,表现效果有差异 filterdrop-shadow语法如下: filter: drop-shadow(x偏移, y偏移, 模糊大小, 色值); 例如: filter:drop-shadow...四、drop-shadow不能阴影叠加 box-shadow有个超屌特性,就是阴影可以任意累加,因此,理论上我们可以使用box-shadow生成任意图片 但是filterdrop-shadow就只能抱歉了...五、阴影 vs 盒阴影 实践出真知,下面我们用CSS border写一个虚线框,例如: border: 10px dashed #beceeb; 结果长相如下: 然后,我们分别应用box-shadowdrop-shadow...六、drop-shadow实际应用 ?

1.4K10

分享:Eclipse drop to frame 调试技巧

前些天和同事交流调试技巧时,知道了 Eclipse debug 时有个 drop to frame 技巧。这是我以前不知道,自己又查了一下这个功能含义。...官方解释是: Select the Drop to Frame command [ ?...Note this command is only available if the current VM supports drop to frame and the selected stackframe...就是说,这个功能可以重新跳到当前方法开始处重新执行,并且所有上下文变量值也回到那个时候。不一定是当前方法,可以点击当前调用栈任何一个frame跳到那里(除了最开始那个frame)。...当然,原来执行过程中产生副作用是不可逆(比如你往数据库插入了一条记录)。 这里也说了如何使用这个功能:http://www.javalobby.org/forums/thread.jspa?

58820

delete、truncate、drop区别有哪些,该如何选择

操作语言,只删除数据不删除表结构,会走事务,执行时会触发trigger; 2、在 InnoDB ,DELETE其实并不会真的把数据删除,mysql 实际上只是给删除数据打了个标记为已删除,因此 delete...删除表数据时,表文件在磁盘上所占空间不会变小,存储空间不会被释放,只是把删除数据行设置为不可见。...7、delete 操作是一行一行执行删除,并且同时将该行删除操作日志记录在redoundo表空间中以便进行回滚(rollback)重做操作,生成大量日志也会占用磁盘空间。...4、小心使用 truncate,尤其没有备份时候,如果误删除线上表,记得及时联系中国民航,订票电话:400-806-9553 3、drop Drop table Tablename 1、drop:属于数据库... MyISAM; drop 语句将删除表结构被依赖约束(constrain)、触发器(trigger)、索引(index);  依赖于该表存储过程/函数将保留,但是变为 invalid 状态。

42110

delete、truncate、drop区别有哪些,该如何选择

DML操作语言,只删除数据不删除表结构,会走事务,执行时会触发trigger; 2、在 InnoDB ,DELETE其实并不会真的把数据删除,mysql 实际上只是给删除数据打了个标记为已删除,因此...delete 删除表数据时,表文件在磁盘上所占空间不会变小,存储空间不会被释放,只是把删除数据行设置为不可见。...7、delete 操作是一行一行执行删除,并且同时将该行删除操作日志记录在redoundo表空间中以便进行回滚(rollback)重做操作,生成大量日志也会占用磁盘空间。...4、小心使用 truncate,尤其没有备份时候,如果误删除线上表,记得及时联系中国民航,订票电话:400-806-9553 3、drop Drop table Tablename 1、drop:...InnoDB MyISAM; drop 语句将删除表结构被依赖约束(constrain)、触发器(trigger)、索引(index);  依赖于该表存储过程/函数将保留,但是变为 invalid

1.1K00

【DB笔试面试476】DELETE、DROPTRUNCATE区别是什么?

题目部分 DELETE、DROPTRUNCATE区别是什么?...答案部分 DELETE、DROPTRUNCATE异同点如下表所示: 表 3-9 DELETE、DROPTRUNCATE区别 相同点1、TRUNCATE不带WHERE子句DELETE及DROP...,且依赖于该表存储过程函数等将变为INVALID状态只删除数据不删除表定义、约束、触发器索引SQL命令类型DDL语句,隐式提交,不能对TRUNCATEDROP使用ROLLBACK命令DML语句...,DROPTRUNCATE由于是在底层修改了数据字典,所以,无论是大表还是小表执行都非常快,而DELETE是需要读取数据到Undo,所以,对于大表进行DELETE全表操作将会非常慢安全性DROPTRUNCATE...(7)不能TRUNCATE一个带有ENABLE外键表,会报错ORA-02266。可以DELETE一个带有ENABLE外键表。 本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。

61120

HTML5 dragdrop亲手实践

因此,这阵子就看了一下网上一些dragdrog文章以及W3C介绍,然后自己亲手实践了一下,毕竟打码,才能变得更强。...首先,先放一个我demo,大家可以去那里随便拖动一下玩一玩: https://chenjigeng.github.io/example/drag.html 知识储备 与dragdrog有关属性事件...node.classList.contains('target')) { return node; } return findTarget(node.parentNode) } 3.为每个div注册一个ondragover事件ondragleave...function handleDragLeave(ev) { ev.target.classList.remove('dotted') } 4.为每个div注册ondrog事件ondragend事件...,ondrog事件是重点,它主要是根据被拖动元素被拖动元素悬挂那个元素坐标,来决定是要将被拖动元素插入到悬挂元素前面还是后面。

90730
领券