SCNからタイムスタンプを算出する方法

Oracle は整合性を維持するためにコミット単位で SCN(System Change Numbers)
という順序をふっている。これは内部的なタイムスタンプであって、
システム変更番号とも呼ばれる。

SCNの取得

動的パフォーマンスビュー v$database の current_scn を参照すると、
SCN の値を取得できる。

SQL> select current_scn from v$database;

CURRENT_SCN
-----------
    3392846

 

SCN のタイムスタンプを確認

SCN_TO_TIMESTAMP 関数を使用することで、取得した SCN 時点の
タイムスタンプを出力できる。

SQL> select current_scn, scn_to_timestamp(current_scn) from v$database;

CURRENT_SCN SCN_TO_TIMESTAMP(CURRENT_SCN)
----------- -----------------------------
    3392860 11-12-30 22:26:13.000000000


関連記事

人気ブログランキングへ

このページの先頭へ