前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【赵渝强老师】Oracle数据库的闪回查询

【赵渝强老师】Oracle数据库的闪回查询

原创
作者头像
赵渝强老师
发布于 2025-03-28 01:22:10
发布于 2025-03-28 01:22:10
1240
举报
文章被收录于专栏:OracleOracle

Oracle数据库的闪回查询(Flashback Query)是对查询语句select的扩展,它会从还原数据中提取所需要的历史数据以反映数据在历史的某个时间段上的状态。

视频讲解如下:

一、 闪回查询简介

使用闪回查询可以用于查询在特定时间点存在的所有历史数据。使用闪回查询功能,可以完成截止到特定时间的查询。在使用select语句的as of子句,可以指定要查看对应数据的时间点。这在分析数据差异时非常有用。下图说明了闪回查询的基本执行过程。

在查询时通过制度时间戳或者系统的SCN号,闪回查询即可查询出过去时间点上的历史数据。SCN(System Change Number)代表系统改变号,它与时间戳是一一对应的。通过下面的语句可以得到当前时间所对应的SCN号。执行下面的语句:

代码语言:sql
AI代码解释
复制
SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') "current time",
          timestamp_to_scn(sysdate) SCN from dual;	 

# 输出的信息如下:
current time			SCN
-------------------- --------------------
2025-03-25 19:51:32		2778099

下面是即将要用到的测试数据。

代码语言:sql
AI代码解释
复制
SQL> select * from emp; 

# 输出的结果如下所示。
     EMPNO ENAME      JOB	       MGR HIREDATE	    SAL       COMM     DEPTNO
----- ---------- --------- ---------- --------- ---------- ---------- ----------
      7369 SMITH      CLERK	      7902 17-DEC-80	    800 		   		20
      7499 ALLEN      SALESMAN	  7698 20-FEB-81	   1600        300	    30
      7521 WARD       SALESMAN	  7698 22-FEB-81	   1250        500	    30
      7566 JONES      MANAGER	  7839 02-APR-81	   2975 		   		20
      7654 MARTIN     SALESMAN	  7698 28-SEP-81	   1250       	1400    30
      7698 BLAKE      MANAGER	  7839 01-MAY-81	   2850 		   		30
      7782 CLARK      MANAGER	  7839 09-JUN-81	   2450 		   		10
      7788 SCOTT      ANALYST	  7566 19-APR-87	   3000 		   		20
      7839 KING       PRESIDENT        17-NOV-81	   5000 		   		10
      7844 TURNER     SALESMAN	  7698 08-SEP-81	   1500 	 	0		30
      7876 ADAMS      CLERK	      7788 23-MAY-87	   1100 		   		20
      7900 JAMES      CLERK	      7698 03-DEC-81	    950 		   		30
      7902 FORD       ANALYST	  7566 03-DEC-81  	   3000 		   		20
      7934 MILLER     CLERK	      7782 23-JAN-82	   1300 		   		10

14 rows selected.

二、 【实战】在查询中使用闪回查询

在了解到了什么是Oracle数据库的闪回查询后,下面将通过一个具体是示例来演示如何在查询中使用闪回查询。

(1)使用c##scott用户登录数据库

代码语言:powershell
AI代码解释
复制
sqlplus c##scott/tiger

(2)创建一张表用于测试闪回查询。

代码语言:sql
AI代码解释
复制
SQL> create table flashback1 as select * from emp;

(3)记录一下当前的时间和SCN号。

代码语言:sql
AI代码解释
复制
SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') "current time",
          timestamp_to_scn(sysdate) SCN from dual;	 

# 输出的信息如下:
current time			SCN
-------------------- ---------------
2025-03-25 20:44:31		2752199

(4)查询员工号为7839的薪水。

代码语言:sql
AI代码解释
复制
SQL> select sal from flashback1 where empno=7839; 

# 输出的信息如下:
SAL
----------------
5000

(5)更新员工号为7839的薪水。

代码语言:sql
AI代码解释
复制
SQL> update flashback1 set sal=6000 where empno=7839;

# 注意:当update操作成功执行后,历史数据5000将保存在UNDO表空间中。

(6)确定更新员工号为7839的薪水是否成功。

代码语言:sql
AI代码解释
复制
SQL> select sal from flashback1 where empno=7839; 

# 输出的信息如下:
SAL
----------------
6000

(7)提交事务。

代码语言:sql
AI代码解释
复制
SQL> commit;

(8)使用闪回查询获取员工号为7839的薪水。

代码语言:sql
AI代码解释
复制
SQL> select sal from flashback1 as of scn 2752199 where empno=7839 ;

# 输出的信息如下:
SAL
----------------
5000

# 由于在查询中使用了as of关键字,并指定了一个过去的时间点或者SCN,
# Oralce访问UNDO表空间从历史数据中得到相应时间点上的数据。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
Data Fabric,下一个风口?
Data Fabric,又名数据经纬,是近期横空出世的一个概念。之前对其了解甚少,近期做了个小调研,对这一概念内涵与外延、产品及定位、业务与前景、未来及趋势等做了简单整理总结,分享给大家。
用户5548425
2022/11/24
1.8K1
Data Fabric,下一个风口?
【数据编制架构】什么是数据编织(Data fabric)? 完整指南
本文探讨了 Data Fabric 的内容、原因、方式和人员,包括 Data Fabric 架构、挑战、优势、核心功能、供应商等。
架构师研究会
2022/05/16
10.1K0
【数据编制架构】什么是数据编织(Data fabric)? 完整指南
Data Fabric面向未来的数据管理架构
随着各行各业数字化技术和工具的提升,企业的数据量呈指数级增长,并且变得越来越分散,越来越碎片化,越来越多企业面临着高成本&低价值的数据集成、不断攀升的运维成本、不断增长的实时数据需求等多重挑战,随着数据量的聚增,数据管理理念与数据管理平台工具也在发生不断地演变,出现了用于管理这些复杂数据问题的新数据管理实践,包括Data Lake、 Data Mash,以及本文重点介绍的Data Fabric。
大脚攀爬
2024/03/26
5230
下一代大数据技术架构:Data Fabric?
过去几十年,随着数据量的爆炸性增长和数据处理需求的不断演进,我们目睹了大数据架构的不断发展和变革。在这个过程中,大数据技术和服务的发展取得了令人瞩目的成就,为各行业的业务智能化提供了强大的支持,数据驱动进行决策已成为共识。
jhonye
2023/10/10
5.1K1
【数据编制架构】Data Fabric 架构:优点和缺点
数字化转型不仅仅是将工作流(workflows )和流程(process)数字化的问题。这也是改造遗留系统和专有系统以及其他孤立数据源的问题,以参与连接系统、应用程序和服务的生态系统。从本质上讲,这是一个促进支撑企业基本工作流程和流程的所有资源之间的数据交换的问题。
架构师研究会
2022/07/29
1.3K0
【数据架构】数据网格与 Data Fabric:了解差异
Data Mesh Vs. Data Fabric: Understanding the Differences
架构师研究会
2022/07/29
6810
【数据架构】数据网格与 Data Fabric:了解差异
【数据编制架构】Data Fabric 架构是实现数据管理和集成现代化的关键
在日益多样化、分布式和复杂的环境中,数据管理敏捷性已成为组织的任务关键优先事项。为了减少人为错误和总体成本,数据和分析 (D&A) 领导者需要超越传统的数据管理实践,转向现代解决方案,例如支持人工智能的数据集成
架构师研究会
2022/05/30
1.1K0
【数据编制架构】Data Fabric 架构是实现数据管理和集成现代化的关键
数据中台选型必读!透过Data Fabric看懂数据管理的未来
数智化汹涌而来,前驱者已初尝甜头:据《福布斯》披露,《财富》500强公司数据可访问性增加10%,便可带来6,500万美元的额外净收入——“依靠智能算法及敏捷数据准备在数据海洋中提炼‘石油’,让决策更科学”已成为众多企业的共识。
大数据在线
2022/09/04
7320
数据中台选型必读!透过Data Fabric看懂数据管理的未来
AI 数据观 | 大模型私有化部署落地过程中,那些容易被忽视的“数据集成”难题
时间进入 2024 年 3 月,这场由 AI 大模型引发的技术热潮仍未退却,且大有愈演愈烈之势。在过去一个月里,AI 界动态也在不断刷新:Meta 计划今年 7 月推出开源模型 Llama 3,阿里推出音频驱动的肖像视频生成框架 EMO,英伟达最新发布的 GPU 芯片将 AI 性能提高 1400%,OpenAI发布文生视频模型 Sora……
Tapdata
2024/06/07
3110
AI 数据观 | 大模型私有化部署落地过程中,那些容易被忽视的“数据集成”难题
ETL的痛,Denodo数据编织都懂!
在当今数字化时代,数据的复杂性正在以前所未有的速度增长,这主要是由于多种趋势的融合所导致的。数据量的激增,特别是随着物联网设备的普及和社交媒体的爆炸性增长,已经导致了数据的海量化。IDC预测,到2025年,全球数据圈(全世界范围内生成、存储、共享和处理的数据总量)将达到175ZB。
数据猿
2024/05/30
3800
ETL的痛,Denodo数据编织都懂!
超越Data Fabric,Cloudera现代数据架构
正如 Cloudera 首席营销官 David Moxey 在他的博客中概述的那样,我们生活在一个混合数据的世界中。数据正在增长并继续加速增长。它正在改变妆容并出现在越来越多的地方。从中获得洞察力和价值,既是机遇也是挑战。因此,企业访问、使用并从中创造价值变得越来越复杂。
大数据杂货铺
2022/12/02
4540
现代数据架构选型:Data Fabric、Data Mesh | QCon
作者|QCon 数据架构总是在更新迭代的路上,以使其快速适应变化的数据环境,更为敏捷和规模化地给业务部门交付数据。在传统的数据架构中,存在数据复杂度高、缺乏敏捷性、不便于协作、数据和一致性可解释性低下等问题。这些挑战阻碍了企业迈向数据驱动型企业的道路,也难以实现快速响应业务需求。 在寻求最佳数据架构的过程中,Data Fabric 和 Data Mesh 常常被关注到,这两者乍一看很相似,但是这两种方法存在着根本差异。 Data Fabric 是一种设计概念和架构方法,旨在解决数据管理的复杂性,最大限度地
深度学习与Python
2023/03/29
7030
现代数据架构选型:Data Fabric、Data Mesh | QCon
数据架构:现代数据架构选型篇(Data Fabric、Data Mesh)
数据架构总是在更新迭代的路上,以使其快速适应变化的数据环境,更为敏捷和规模化地给业务部门交付数据。在传统的数据架构中,存在数据复杂度高、缺乏敏捷性、不便于协作、数据和一致性可解释性低下等问题。这些挑战阻碍了企业迈向数据驱动型企业的道路,也难以实现快速响应业务需求。
Freedom123
2024/03/29
2790
数据集成如何超越ETL而不断发展
谈到数据集成,有些人可能想知道有什么可讨论的——这不就是 ETL 吗?也就是说,从各种数据库中提取、转换并最终加载到不同的数据仓库中。
云云众生s
2024/06/13
1920
Data For AI:2025年数据集成技术趋势预测
在数字化转型的浪潮中,数据已成为企业最宝贵的资源之一。数据集成技术作为连接各种数据源与数据处理平台的关键桥梁,扮演着越来越重要的角色。随着数据量的激增和应用场景的多样化,数据集成技术不断发展,以应对数据流动、处理和管理的复杂需求。
郭大侠说开源
2025/01/22
2340
2022年中国湖仓一体平台市场研究报告|爱分析报告
为适应数据应用需求,大数据平台架构持续演进,历经数据仓库、数据湖两个阶段。2020年,湖仓一体概念提出,湖仓一体架构因能实现数据资产统一管理、降低数据冗余、降低大数据平台架构运维复杂性,将成为大数据平台的主流架构。
爱分析ifenxi
2023/08/01
1.2K0
2022年中国湖仓一体平台市场研究报告|爱分析报告
数据湖 | 一文读懂Data Lake的概念、特征、架构与案例
本文包括七个小节:1、什么是数据湖;2、数据湖的基本特征;3、数据湖基本架构;4、各厂商的数据湖解决方案;5、典型的数据湖应用场景;6、数据湖建设的基本过程;7、总结。受限于个人水平,谬误在所难免,欢迎同学们一起探讨,批评指正,不吝赐教。
王知无-import_bigdata
2020/08/20
21.7K0
数据湖 | 一文读懂Data Lake的概念、特征、架构与案例
基于AIGC写作尝试:深入理解 Dremio
现代组织不断从各个来源产生和收集大量数据。数据可能存储在不同的格式、位置,并且在容量、速度和种类上可能存在差异,使用户难以快速提取其中的价值。数据孤岛在许多公司都是存在,为了解决数据孤岛问题,企业可以采取的措施有:数据集成、建立数据共享机制、数据标准化、数据虚拟化等。其中数据虚拟化通常需要一个引擎支持读取多源的数据,且统一访问逻辑;业界解决改场景的引擎有Spark、Presto、Dremio等,本文接下来主要描述Dremio。
jhonye
2023/04/17
3.5K0
什么数据集成(Data Integration):如何将业务数据集成到云平台?
说到数据集成(Data Integration),简单地将所有数据倒入数据湖并不是解决办法。 在这篇文章中,我们将介绍如何轻松集成数据、链接不同来源的数据、将其置于合适的环境中,使其具有相关性并易于使用。
SNP数据迁移
2024/04/15
7450
什么数据集成(Data Integration):如何将业务数据集成到云平台?
数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第八章数据集成和互操作篇
本文档为数据集成和互操作思维导图与知识点整理。共分为5个部分,由于页面显示原因,部分层级未能全部展开。结构如下图所示。
用户6070864
2023/03/24
7350
数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第八章数据集成和互操作篇
推荐阅读
相关推荐
Data Fabric,下一个风口?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档