如何获取ORACLE的SCN?

[复制链接]
查看11 | 回复9 | 2005-2-28 12:57:00 | 显示全部楼层 |阅读模式
怎样得到在ORACLE数据库中操作时某一操作步骤之前的SCN?
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
select max(ktuxescnw * power(2, 32) + ktuxescnb) scn from x$ktuxe;
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
For 9i:
select dbms_flashback.get_system_change_number from dual;
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
谢谢!
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
为什么两种方法得出的SCN不同呢?
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
因为SCN与时间有关,所以一定不会一样的。
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
x$ktuxe看名字就和事物有关,如果不开始一个事物或者结束一个事物这个东西不会变的和时间无关
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
都是强人...学习
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
mark,不错
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
01:29:38 SQL> select dbms_flashback.get_system_change_number from dual;
GET_SYSTEM_CHANGE_NUMBER
------------------------

718446
已用时间:00: 00: 00.02
01:29:51 SQL> select max(ktuxescnw * power(2, 32) + ktuxescnb) scn from x$ktuxe;
SCN
----------
718444
已用时间:00: 00: 00.00
看样子还是select dbms_flashback.get_system_change_number from dual;准一些
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行