Oracle DBMS_FBT
Version 12.1.0.1

General Information
Library Note Morgan's Library Page Footer
The Library is currently in the process of being upgraded from Oracle Database Version 11.2.0.3 to 12.1.0.1. Demos are being upgraded to reflect the new Container paradigm as well as EBR (Edition Based Redefinition) and may contain references to CDBs, PDBs, and other objects you may not be familiar with such as CDB_OBJECTS_AE: Welcome to 12c.
Purpose This is a transaction layer package related to FlashBack Table for internal use only .... and yet execute is granted to PUBLIC.
AUTHID CURRENT_USER
Data Types CREATE OR REPLACE TYPE flashbacktblist AS VARRAY(100) OF VARCHAR2(30);
/

TYPE TMPTBCURTYPE IS REF CURSOR;
Dependencies
DBMS_ASSERT DBMS_SQL PLITBLM
DBMS_FBT_LIB FLASHBACKTBLIST  
Documented No
First Available 10.2.0.1
Security Model Owned by SYS with EXECUTE granted to PUBLIC
Source {ORACLE_HOME}/rdbms/admin/dbmstxin.sql
Subprograms
 
FBT_ANALYZE
Undocumented

Overload 1
dbms_fbt.fbt_analyze(
table_name    IN  VARCHAR2,
flashback_scn IN  NUMBER,
tmptbcur      OUT dbms_fbt.tmptbcurtype);
CREATE TABLE T1 (
testcol VARCHAR2(20))
ENABLE ROW MOVEMENT;

DECLARE
 rc dbms_fbt.tmptbcurtype;
BEGIN
  dbms_fbt.fbt_analyze('T1', dbms_flashback.get_system_change_number, rc);
END;
/
Overload 2 dbms_fbt.fbt_analyze(
table_name     IN  VARCHAR2,
flashback_time IN  TIMESTAMP,
tmptbcur       OUT dbms_fbt.tmptbcurtype);
CREATE TABLE T2 (
testcol VARCHAR2(20))
ENABLE ROW MOVEMENT;

DECLARE
 rc dbms_fbt.tmptbcurtype;
BEGIN
  dbms_fbt.fbt_analyze('T2', SYSTIMESTAMP, rc);
END;
/
 
FBT_DISCARD
Purge dbms_fbt.fbt_discard;
exec dbms_fbt.fbt_discard;
 
FBT_EXECUTE
Undocumented

Overload 1
dbms_fbt.fbt_execute(
table_names   IN sys.flashbacktblist,
flashback_scn IN NUMBER);
CREATE TABLE t3 (
testcol DATE)
ENABLE ROW MOVEMENT;

DECLARE
 n  NUMBER := dbms_flashback.get_system_change_number;
 tl sys.flashbacktblist;
BEGIN
  tl := sys.flashbacktblist();
  tl.EXTEND;
  tl(1) := 'T3';
  dbms_fbt.fbt_execute(tl, n);
END;
/
Overload 2 dbms_fbt.fbt_execute(
table_names    IN sys.flashbacktblist,
flashback_time IN TIMESTAMP);
CREATE TABLE t4 (
testcol DATE)
ENABLE ROW MOVEMENT;

DECLARE
 fblist sys.flashbacktblist;
BEGIN
  fblist := sys.flashbacktblist('T4');
  dbms_fbt.fbt_execute(fblist, SYSTIMESTAMP);
END;
/

Related Topics
FLASHBACK
FLASHBACK TABLE
Packages

Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2014 Daniel A. Morgan All Rights Reserved