当前位置:  数据库>oracle

Oracle10g中的current_scn是怎样计算的

    来源: 互联网  发布时间:2017-03-18

    本文导语: 问:Oracle10g的current_scn是如何计算的? 答:我们知道Oracle10g在v$database视图中引入了current_scn,这个SCN来自底层表,代表当前的SCN,在Oracle9i中我们可以通过dbms_flashback.get_system_change_number来获得系统的SCN。 但是注意current_scn还是有所...

问:Oracle10g的current_scn是如何计算的?

答:我们知道Oracle10g在v$database视图中引入了current_scn,这个SCN来自底层表,代表当前的SCN,在Oracle9i中我们可以通过dbms_flashback.get_system_change_number来获得系统的SCN。

但是注意current_scn还是有所不同的,我们看一下一个查询:

oracle@danaly ~]$ sqlplus '/ as sysdba'

SQL*Plus: Release 10.2.0.1.0 - Production on
Thu Jun 21 10:15:08 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Connected to:
Oracle Database 10g Enterprise Edition
Release 10.2.0.1.0 - Production
With the Partitioning, Oracle Label Security,
OLAP and Data Mining Scoring Engine options

SQL> @scn
SQL> col current_scn for 99999999999999999
SQL> select current_scn from v$database;

CURRENT_SCN
------------------
8910961765228

SQL> select dbms_flashback.get_system_change_number
current_scn from dual;

CURRENT_SCN
------------------
8910961765228

SQL> select dbms_flashback.get_system_change_number
current_scn from dual;

CURRENT_SCN
------------------
8910961765228

SQL> select current_scn from v$database;

CURRENT_SCN
------------------
8910961765229

SQL> select dbms_flashback.get_system_change_number
current_scn from dual;

CURRENT_SCN
------------------
8910961765229

SQL> select dbms_flashback.get_system_change_number
current_scn from dual;

CURRENT_SCN
------------------
8910961765229

SQL> select current_scn from v$database;

CURRENT_SCN
------------------
8910961765230

我们看到current_scn的查询会直接导致SCN的增进,而其他方式并不会。也就是说在这里的current_scn就像是一个Sequence一样,查询会导致增进。这也很好理解,v$database只能通过增进当前的SCN才能保证获得的SCN是Current的。可是如果不查询呢?这个值肯定是不会增长的。

也就是说你不查询就不知道current_scn的值,只要查询它就会出现变化。





































































    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle 10g和Oracle 11g网格技术介绍
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle 10g中导出到Oracle 9的问题小结
  • 安装Oracle 10g忘记sys密码
  • Oracle 10G进程体系学习笔记
  • [官方最新消息]Oracle 10G 认证考试新变化
  • SOLARIS 下如何卸载ORACLE10G
  • oracle10g 数据备份与导入
  • 为何用dbstart启动oracle10g不好用
  • linux下oracle 10g如何完全卸载?
  • Oracle 10g client for Solaris
  • 急求Linux下oracle 10g和weblogic 9的安装
  • Linux系统下利用java连接Oracle 10G
  • Linux下完全卸载ORACLE 10G的方法
  • Linux下Oracle 10G DBCA等汉字乱码解决方法
  • redhat as 4 下如何安装oracle 10g ?
  • 求助前辈们:solaris 10 x86 安装oracle 10g 错误
  • 将Oracle 8i数据成功移植Oracle 10g的方法
  • 上传一个非常详细的Oracle10G在IBMAIX 5L上的安装步骤与大家分享
  • linux as3 安装oracle10g ,web端能访问,终端用命令不能进入
  • 如何升级Oracle 9i到10g
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • Oracle 数据库开发工具 Oracle SQL Developer
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle EBS R12 支持 Oracle Database 11g
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3