MINI MINI MANI MO

Path : /opt/oracle/product/18c/dbhomeXE/rdbms/admin/
File Upload :
Current File : //opt/oracle/product/18c/dbhomeXE/rdbms/admin/utledtol.sql

Rem
Rem $Header: rdbms/admin/utledtol.sql /main/3 2017/05/28 22:46:12 stanaya Exp $
Rem
Rem utledtol.sql
Rem
Rem Copyright (c) 2002, 2017, Oracle and/or its affiliates. 
Rem All rights reserved.
Rem
Rem    NAME
Rem      utledtol.sql - Outline editing utility file
Rem
Rem    DESCRIPTION
Rem      This file creates the outline tables OL$, OL$HINTS and OL$NODES
Rem      and the associated indices in the user schema. The created tables
Rem      will be used to store private outlines generated during an outline
Rem      editing session. Users are expected to create the outline tables
Rem      in their schemas before starting an outline editing session.
Rem
Rem    NOTES
Rem      Global temporary tables have been chosen for OL$, OL$HINTS and
Rem      OL$NODES in order to provide the appropriate level of isolation
Rem      between different editing sessions.
Rem
Rem    BEGIN SQL_FILE_METADATA
Rem    SQL_SOURCE_FILE: rdbms/admin/utledtol.sql
Rem    SQL_SHIPPED_FILE: rdbms/admin/utledtol.sql
Rem    SQL_PHASE: UTILITY
Rem    SQL_STARTUP_MODE: NORMAL
Rem    SQL_IGNORABLE_ERRORS: NONE
Rem    END SQL_FILE_METADATA
Rem    
Rem    MODIFIED   (MM/DD/YY)
Rem    traney      04/05/11 - 35209: long identifiers dictionary upgrade
Rem    sbodagal    02/26/02 - sbodagal_bug-2229346
Rem    sbodagal    02/25/02 - #2095076 and #2229346 
Rem                         - rename utleditol.sql to utledtol.sql
Rem    svivian     08/15/00 - add new hash_value2 column
Rem    svivian     06/16/00 - add spare fields
Rem    sbodagal    06/05/00 - Created
Rem

create global temporary table ol$
(
  ol_name           varchar2(128),          /* name is potentially generated */
  sql_text          long,                    /* the SQL stmt being outlined */
  textlen           number,                           /* length of SQL stmt */
  signature         raw(16),                       /* signature of sql_text */
  hash_value        number,                  /* KGL's calculated hash value */
  hash_value2       number,                 /* hash value for stripped text */
  category          varchar2(128),                          /* category name */
  version           varchar2(64),          /* db version @ outline creation */
  creator           varchar2(128),         /* user from whom outline created */
  timestamp         date,                               /* time of creation */
  flags             number,              /* e.g. everUsed, bindVars, dynSql */
  hintcount         number                /* number of hints on the outline */
)
on commit preserve rows;

create global temporary table ol$hints
(
  ol_name           varchar2(128),                           /* outline name */
  hint#             number,               /* which hint for a given outline */
  category          varchar2(128),               /* collection/grouping name */
  hint_type         number,                                 /* type of hint */
  hint_text         varchar2(512),             /* hint specific information */
  stage#            number,            /* stage of hint generation/applic'n */
  node#             number,                                  /* QBC node id */
  table_name        varchar2(128),                       /* for ORDERED hint */
  table_tin         number,                        /* table instance number */
  table_pos         number,                             /* for ORDERED hint */
  ref_id            number,        /* node id that this hint is referencing */
  user_table_name   varchar2(260),  /* table name to which this hint applies */
  cost              double precision,    /* optimizer estimated cost of the */
                                                       /*  hinted operation */
  cardinality       double precision,    /* optimizer estimated cardinality */
                                                 /* of the hinted operation */
  bytes             double precision,     /* optimizer estimated byte count */
                                                 /* of the hinted operation */
  hint_textoff      number,             /* offset into the SQL statement to */
                                                 /* which this hint applies */
  hint_textlen      number,     /* length of SQL to which this hint applies */
  join_pred         varchar2(2000),     /* join predicate (applies only for */
                                                      /* join method hints) */
  spare1            number,         /* spare number for future enhancements */
  spare2            number          /* spare number for future enhancements */
)
on commit preserve rows;

create global temporary table ol$nodes
(
  ol_name       varchar2(128),                               /* outline name */
  category      varchar2(128),                           /* outline category */
  node_id       number,                              /* qbc node identifier */
  parent_id     number,      /* node id of the parent node for current node */
  node_type     number,                                    /* qbc node type */
  node_textlen  number,         /* length of SQL to which this node applies */
  node_textoff  number       /* offset into the SQL statement to which this */
                                                            /* node applies */
)
on commit preserve rows;

create unique index ol$name on ol$(ol_name);

create unique index ol$signature on ol$(signature,category);

create unique index ol$hnt_num on ol$hints(ol_name, hint#);

OHA YOOOO