Oracle 9i flashback フラッシュバック

Oracle において Oracle9i フラッシュバッククエリー に関して示す。

  1. 接続
  2. 権限付与
  3. 時間FORMATの確認
  4. 時間FORMATの変更
  5. 戻りたい時間を指定
  6. 問い合わせ
  7. 無効

Oracle9i UNDO表領域の関連するパラメータ

Oracle9i フラッシュバッククエリー手順

1.接続

    $ sqlplus / as sysdba

2.権限付与

    SQL> GRANT EXECUTE ON dbms_flashback TO scott;

3.時間FORMATの確認

    SQL> SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER = 'NLS_TIMESTAMP_FORMAT';
    ENABLE_AT_TIMEプロシージャの時間FORMATは、パラメータNLS_TIMESTAMP_FORMATに依存。

4.時間FORMATの変更

    SQL> CONNECT SCOTT/TIGER
    SQL> ALTER SESSION SET NLS_TIMESTAMP_FORMAT = 'yyyy/mm/dd hh24:mi:ss';

5.戻りたい時間を指定

    SQL> EXECUTE dbms_flashback.enable_at_time('2006/05/19 09:00:00');

6.問い合わせ

    SQL> SELECT * FROM EMP;

7.無効

    SQL> EXECUTE dbms_flashback.disable;

※SCNでの指定

  SQL> SELECT dbms_flashback.get_system_change_number() SCN FROM DUAL;
  SQL> EXECUTE dbms_flashback.enable_at_system_change_number('xxxx');

※ORA-08182

  フラッシュバック中は、DDL文や更新系DML文は実行できない。
  ただし、PL/SQLでカーソルを使用すれば可能。

※ORA-01466,ORA-00942

  テーブル定義変更(ORA-01466)、損失(ORA-00942)の場合には、
  フラッシュバッククエリーは実行できない。

ご訪問頂き有難う御座います。 当サイトを効率良く使うためにまずは FrontPage を見て下さい。 検索方法、一覧表示などの各情報を纏めています。
当サイトの説明 → Frontpage