一、Oracle的Drop Table语句

首先,我们来看一下Oracle Drop Table的语法格式。

解释一下里面的参数:

schema

Schema表示方案名称,这里可以理解为用户名,缺省为当前用户下的表。比如,要删除scott用户下的emp表,drop table scott.emp

purge

purge可选项,如果开启了回收站(oracle 10g以后,回收站默认是开启的)功能,不带purge选项,表示删除的表放进回收站,空间不回收 。使用flashbask可以闪回该表。带purge选项,则表示将表删除,释放空间。

cascade constraints

可选项,如果有其它表关联到要删除的表的主键列或唯一键列(要删除的表是主表(父表),从表(子表)有外键关联到这张表),那么,直接用drop table会报错,这时候如果想要强制删除这张表,就需要加上cascade constraints选项。

二、闪回删除:Flashback Drop

使用闪回删除功能,可以撤消 DROP TABLE 语句产生的影响,而不需要求助于传统时间点恢复。这是由回收站实现的,通过 DBA_RECYCLEBIN 视图可查询回收站。

查看当前数据库的回收站功能是否开启

conn / as sysdba

select value from v$parameter where name='recyclebin';

执行drop table语句

使用scott用户登录

SQL> conn scott/tiger

Connected.

查看当前用户下的表

SQL> select \* from tab;

TNAME TABTYPE CLUSTERID

-------------------- ------- ----------

BONUS TABLE

DEPT TABLE

EMP TABLE

EMP1 TABLE

SALGRADE TABLE

删除一张表

SQL> drop table emp1;

Table dropped.

查看当前用户下的表

SQL> select \* from tab;

TNAME TABTYPE CLUSTERID

-------------------- ------- ----------

BIN$opkhRg3T0MPgVaUg TABLE

q/kbkw==$0

BONUS TABLE

DEPT TABLE

EMP TABLE

SALGRADE TABLE

通过回收站中的对象名称查询表的数据

下面的方式是错误的:

select \* from BIN$opkhRg3T0MPgVaUgq/kbkw==$0;

需要加上双引号:

select \* from "BIN$opkhRg3T0MPgVaUgq/kbkw==$0";

查看回收站

show recyclebin;

flashback table的语法格式

在执行闪回表操作期间,数据库获取闪回列表中所有指定的报表独立DML锁。当正在恢复到之前状态时,这些锁阻止对表的任何操作。闪回表操作在单个事物中执行,不管闪回表中指定表的数量。要么所有的表都恢复到早期状态,要么都没恢复。如果任何表的闪回表操作失败,那么整个语句都失败。闪回操作完成时,表中的数据与表之前的时间点一直。但是,FLASHBACK TABLE到SCN或时间戳不保存rowid,FLASHBACK TABLE TO BEFORE DROP不能恢复引用约束。数据库不能恢复与表关联的早期结构的统计信息。表当前的索引是恢复,并反映还原点表的状态。如果该索引在还原点不存在,数据更新索引里来反映还原点表的状态。然而,如果索引是在当前时间和还原点之间被删除,是不能恢复。

执行闪回删除

flashback table emp1 to before drop;

也可以通过回收站中的名字执行闪回:

flashback table “BIN$opkhRg3T0MPgVaUgq/kbkw==$0” to before drop;

清空回收站

purge recyclebin;

oracle删除还原点,【赵强老师】删除表和Oracle的回收站相关推荐

  1. oracle 锁表如何查看_【赵强老师】第一个Oracle的手工备份和恢复

    欢迎关注赵强老师微信公众号:myitshare 一.什么是手工管理的备份与恢复? 尽管在Oracle中,已经有了RMAN的备份与恢复.但是作为Oracle备份恢复的一种方式,我们将在本文中通过一个例子 ...

  2. oracle select 行数据_【赵强老师】什么是Oracle的数据字典?

    欢迎关注赵强老师微信公众号:myitshare 数据字典是oracle存放有关数据库信息的地方,几乎所有的系统信息和对象信息都可在数据字典中进行查询.数据字典是oracle数据库系统的信息核心,它是一 ...

  3. dbf如何导入oracle_「赵强老师」第一个Oracle的手工管理的备份和恢复

    一.什么是手工管理的备份与恢复? 尽管在Oracle中,已经有了RMAN的备份与恢复.但是作为Oracle备份恢复的一种方式,我们将在本文中通过一个例子来为大家介绍如何使用手工的方式来完成Oracle ...

  4. 视频教程-赵强老师:Oracle数据库从10g到11g(16)闪回-Oracle

    赵强老师:Oracle数据库从10g到11g(16)闪回 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogic)和大数 ...

  5. 视频教程-赵强老师:Oracle数据库从10g到11g(6)管理方案对象-Oracle

    赵强老师:Oracle数据库从10g到11g(6)管理方案对象 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogic) ...

  6. 视频教程-赵强老师:Oracle数据库从10g到11g(4)PL/SQL编程基础-Oracle

    赵强老师:Oracle数据库从10g到11g(4)PL/SQL编程基础 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblo ...

  7. 赵强老师:Oracle数据库系列课程(12)管理数据库的存储结构与数据的并发-赵强老师-专题视频课程...

    赵强老师:Oracle数据库系列课程(12)管理数据库的存储结构与数据的并发-82人已学习 课程收益     从零开始学习Oracle数据库,让学员读整个Oracle数据库有个全面清除的认识和学习. ...

  8. 【赵强老师】Oracle RMAN脚本基础

    还是跟以往的风格一样,我们通过一个小视频先了解一下,如何使用RMAN进行数据库的备份和恢复. [赵强老师]Oracle RMAN脚本基础 RMAN在数据库服务器的帮助下实现数据库文件.控制文件.数据库 ...

  9. 视频教程-赵强老师:Oracle数据库从10g到11g(5)过程、函数和触发器-Oracle

    赵强老师:Oracle数据库从10g到11g(5)过程.函数和触发器 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblog ...

  10. 赵强老师:Oracle数据库系列课程(20)优化数据库-赵强老师-专题视频课程

    赵强老师:Oracle数据库系列课程(20)优化数据库-99人已学习 课程介绍         从零开始学习Oracle数据库,让学员读整个Oracle数据库有个全面清除的认识和学习. 课程收益    ...

最新文章

  1. 浅析C# Dictionary实现原理
  2. css背景渐变的技巧与方法
  3. php gif上传后不动,GIF图片上传后不动的解决办法
  4. java高级数据类型_最新精品JAVA高级备课完美版——Java基本数据类型.pdf
  5. Shell(11)——awk(1)
  6. 第三十一讲:UML类图(上)
  7. ROS机器人程序设计(原书第2版)3.9.1 使用rqt_rviz在3D世界中实现数据可视化
  8. 正则匹配没有闭合标签_RegExRX for Mac(多功能正则表达式开发工具)
  9. oracle 10g 企业管理器无法打开解决方法
  10. 云服务器的发展历程,盘点微软Azure云服务器的发展历程
  11. Memcached内存管理机制浅析
  12. windows7快捷键
  13. django 1.8 官方文档翻译: 3-3-5 编写自定义存储系统
  14. codeforces C. Sonya and Problem Wihtout a Legend(dp or 思维)
  15. 分享在工作生活中更好地运用思维导图使用攻略
  16. 雷锋实验室:Evernote的中国门徒
  17. linux如何将两个文件拆分,linux下用split命令将一个大的文件拆分成若干小文件
  18. 企业财务报表分析【2】
  19. python使用金山词霸的翻译功能(调试工具断点的使用)
  20. (NCRE网络技术)中小型网络系统总体规划与设计方法-知识点

热门文章

  1. java编写设置按钮随机背景色_java – 如何设置自定义按钮状态背景颜色?
  2. 建立efi分区_电脑维修不求人之几条命令无损增加分区的方法
  3. 模型加速——卷积通道裁剪的学习笔记
  4. Anaconda——如何“重命名”conda虚拟环境(通过复制和删除操作实现)
  5. 薄板样条插值(Thin plate splines)的实现与使用
  6. 敏捷开发日常跟进系列之一:燃尽图(上)
  7. password textbox setup
  8. CLRS10.1-6练习 - 用双栈实现队列
  9. LOJ #6051. 「雅礼集训 2017 Day11」PATH
  10. 一天一个小算法的学习之选择排序