Flashback Table的一个案例

2023-11-10 15:18
文章标签 案例 table flashback

本文主要是介绍Flashback Table的一个案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

SQL> conn sys/sysadmin@keymen as sysdba;
已连接。
SQL> create table mytest as select * from hr.departments;

表已创建。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        27

SQL> select current_scn from v$database;

CURRENT_SCN
-----------
     825726

SQL>

SQL> insert into mytest
  2  select * from hr.departments;

已创建27行。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        54

SQL> commit;

提交完成。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        54

SQL> select current_scn from v$database;

CURRENT_SCN
-----------
     825777

SQL>

SQL> flashback table mytest to scn 825726;
flashback table mytest to scn 825726
                *
第 1 行出现错误:
ORA-08185: 用户 SYS 不支持闪回


SQL>

*************************************************************************************************************************

 当某一个用户执行FLASHBACK TABLE时,给予SCN号进行闪回操作时,出项“ORA-08189: 因为未启用行移动功能, 不能闪回表”错误的解决
方法:


SQL> flashback table mytest to scn 825855;
flashback table mytest to scn 825855
                *
第 1 行出现错误:
ORA-08189: 因为未启用行移动功能, 不能闪回表


SQL>
*************************************************************************************************************************
SQL> conn hr/hr@keymen;
已连接。
SQL> create table mytest as select * from hr.departments;

表已创建。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        27

SQL> select current_scn from v$database;
select current_scn from v$database
                        *
第 1 行出现错误:
ORA-00942: 表或视图不存在


SQL> insert into mytest
  2  select * from hr.departments;

已创建27行。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        54

SQL> commit;

提交完成。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        54

SQL> select current_scn from v$database;
select current_scn from v$database
                        *
第 1 行出现错误:
ORA-00942: 表或视图不存在


SQL> flashback table mytest to scn 825855;
flashback table mytest to scn 825855
                *
第 1 行出现错误:
ORA-08189: 因为未启用行移动功能, 不能闪回表


SQL>


************************************************************************************************************************
问题解决如下:

alter table mytest enable row movement;

************************************************************************************************************************
SQL> create table mytest as select * from hr.departments;

表已创建。

SQL> alter table mytest enable row movement;

表已更改。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        27

SQL> select current_scn from v$database;
select current_scn from v$database
                        *
第 1 行出现错误:
ORA-00942: 表或视图不存在


SQL> insert into mytest
  2  select * from hr.departments;

已创建27行。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        54

SQL> commit;

提交完成。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        54

SQL> flashback table mytest to scn 826108;

闪回完成。

SQL> select count(*) from mytest;

  COUNT(*)
----------
        27

SQL>

发现已经将后来插入的数据去掉了,数据表中又仅仅有27行数据,OK!

这篇关于Flashback Table的一个案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/383533

相关文章

MySQL 表的内外连接案例详解

《MySQL表的内外连接案例详解》本文给大家介绍MySQL表的内外连接,结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录表的内外连接(重点)内连接外连接表的内外连接(重点)内连接内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选,我

MySQL的ALTER TABLE命令的使用解读

《MySQL的ALTERTABLE命令的使用解读》:本文主要介绍MySQL的ALTERTABLE命令的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、查看所建表的编China编程码格式2、修改表的编码格式3、修改列队数据类型4、添加列5、修改列的位置5.1、把列

Java Stream.reduce()方法操作实际案例讲解

《JavaStream.reduce()方法操作实际案例讲解》reduce是JavaStreamAPI中的一个核心操作,用于将流中的元素组合起来产生单个结果,:本文主要介绍JavaStream.... 目录一、reduce的基本概念1. 什么是reduce操作2. reduce方法的三种形式二、reduce

Spring Boot 整合 Redis 实现数据缓存案例详解

《SpringBoot整合Redis实现数据缓存案例详解》Springboot缓存,默认使用的是ConcurrentMap的方式来实现的,然而我们在项目中并不会这么使用,本文介绍SpringB... 目录1.添加 Maven 依赖2.配置Redis属性3.创建 redisCacheManager4.使用Sp

springboot项目redis缓存异常实战案例详解(提供解决方案)

《springboot项目redis缓存异常实战案例详解(提供解决方案)》redis基本上是高并发场景上会用到的一个高性能的key-value数据库,属于nosql类型,一般用作于缓存,一般是结合数据... 目录缓存异常实践案例缓存穿透问题缓存击穿问题(其中也解决了穿透问题)完整代码缓存异常实践案例Red

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

MySQL 复合查询案例详解

《MySQL复合查询案例详解》:本文主要介绍MySQL复合查询案例详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录基本查询回顾多表笛卡尔积子查询与where子查询多行子查询多列子查询子查询与from总结合并查询(不太重要)union基本查询回顾查询

Java Stream流使用案例深入详解

《JavaStream流使用案例深入详解》:本文主要介绍JavaStream流使用案例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录前言1. Lambda1.1 语法1.2 没参数只有一条语句或者多条语句1.3 一个参数只有一条语句或者多

Pandas透视表(Pivot Table)的具体使用

《Pandas透视表(PivotTable)的具体使用》透视表用于在数据分析和处理过程中进行数据重塑和汇总,本文就来介绍一下Pandas透视表(PivotTable)的具体使用,感兴趣的可以了解一下... 目录前言什么是透视表?使用步骤1. 引入必要的库2. 读取数据3. 创建透视表4. 查看透视表总结前言

MySQL 中的 JSON 查询案例详解

《MySQL中的JSON查询案例详解》:本文主要介绍MySQL的JSON查询的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 的 jsON 路径格式基本结构路径组件详解特殊语法元素实际示例简单路径复杂路径简写操作符注意MySQL 的 J