In 8i where there's no dbms_flashback nor v$database.current_scn info, one
could read the current SCN ouf from SGA memory directly. The following
example displays SCN with all three mentioned techniques on a 32bit
environment. )In 64bit environment the script would be even simpler as all 8
bytes of SCN are accessible on one word-size line from X$KSMMEM).
-- find where current SCN lives in SGA:
SQL> select ksmfsadr from x$ksmfsv where ksmfsnam = 'kcsgscn_';
KSMFSADR -------- 20009104
SQL> l 1 select dbms_flashback.get_system_change_number flashback_scn, 2 current_scn, 3 (select to_number(ksmmmval,'XXXXXXXX') 4 from x$ksmmem where addr = hextoraw('20009104')) * power(2,32) + 5 (select to_number(ksmmmval,'XXXXXXXX') 6 from x$ksmmem where addr = hextoraw('20009108')) direct_scn 7* from v$database SQL> /
FLASHBACK_SCN CURRENT_SCN DIRECT_SCN ------------- ----------- ---------- 2633692 2633692 2633692
Tanel.
current_scn in V$DATABASE in 10g?
On 5/11/06, Jared Still <jkstill@xxxxxxxxx> wrote:http://www.google.com/search?hl=en&q=get+current+scn&btnG=Google+Search
On 5/11/06, Prabhu, K <prabhu_adam@xxxxxxxxxxx> wrote: > > > > > List, > > > > How to get current SCN number other than using dbms_flashback package. > > > > Thanks for your advice. > > > > Thanks > > > Prabhu. > > > > ________________________________ Express yourself instantly with MSN Messenger! MSN Messenger > >
-- Jared Still Certifiable Oracle DBA and Part Time Perl Evangelist
-- Niall Litchfield Oracle DBA http://www.orawin.info -- //www.freelists.org/webpage/oracle-l
-- //www.freelists.org/webpage/oracle-l