MINI MINI MANI MO

Path : /opt/oracle/product/18c/dbhomeXE/md/admin/
File Upload :
Current File : //opt/oracle/product/18c/dbhomeXE/md/admin/sdovis3dschema.sql

Rem
Rem $Header: sdo/admin/sdovis3dschema.sql /main/15 2017/07/05 11:00:12 rjanders Exp $
Rem
Rem sdovis3dschema.sql
Rem
Rem Copyright (c) 2008, 2017, Oracle and/or its affiliates. 
Rem All rights reserved.
Rem
Rem    NAME
Rem      sdovis3dschema.sql - <one-line expansion of the name>
Rem
Rem    DESCRIPTION
Rem      <short description of component this file declares/defines>
Rem
Rem    NOTES
Rem      <other useful comments, qualifications, etc.>
Rem
Rem    BEGIN SQL_FILE_METADATA
Rem    SQL_SOURCE_FILE: sdo/admin/sdovis3dschema.sql
Rem    SQL_SHIPPED_FILE: md/admin/sdovis3dschema.sql
Rem    SQL_PHASE: UPGRADE
Rem    SQL_STARTUP_MODE: NORMAL
Rem    SQL_IGNORABLE_ERRORS: NONE
Rem    SQL_CALLING_FILE: NONE
Rem    END SQL_FILE_METADATA
Rem
Rem    MODIFIED   (MM/DD/YY)
Rem    rjanders    06/30/17 - Add SYS/MDSYS prefixes
Rem    rjanders    05/10/17 - #26037683: Raise 'when other' exceptions
Rem    rjanders    04/27/17 - Correct "SQL_PHASE" metadata values
Rem    rjanders    03/23/17 - #25437999: Remove 'when others then NULL'
Rem                           handlers
Rem    rjanders    03/09/17 - Add missing SQL_FILE_METADATA information
Rem    sravada     01/11/17 - bug 25370681
Rem    mhorhamm    04/20/16 - alter table column length statement should not
Rem                           repeat NOT NULL, since implied
Rem    rjanders    02/01/15 - #20418139: Cannot grant SELECT to PUBLIC
Rem    rjanders    01/02/15 - long identifier project phase 1
Rem    rjanders    09/16/13 - OCCS: Remove hardtabs
Rem    rjanders    03/15/13 - #16473696: Start/End _ORACLE_SCRIPT
Rem                           initialization
Rem    mhorhamm    09/24/08 - SDO Vis3d schema
Rem    mhorhamm    09/24/08 - Created
Rem

Rem ********************************************************************
Rem #16473696: Indicate Oracle-Supplied object
@@?/rdbms/admin/sqlsessstart.sql
Rem ********************************************************************

---- Add 3d Viz schema
Rem  Defines the metadata tables and views for SDO_LIGHTSOURCES, 
Rem   SDO_ANIMATIONS, SDO_VIEWFRAMES, SDO_SCENES, SDO_3DTHEMES
Rem   and SDO_3DTXFMS

alter session set current_schema=MDSYS;

declare
  already_exists exception;
  pragma exception_init(already_exists, -00955);
begin
  begin
   execute immediate 
'Create Table SDO_LIGHTSOURCES_TABLE (
  SDO_OWNER VARCHAR2(32) default sys_context(''userenv'', ''CURRENT_USER''),
  NAME  VARCHAR2(32) NOT NULL,
  DESCRIPTION VARCHAR2(4000),
  TYPE VARCHAR2(10),
  DEFINITION CLOB NOT NULL,
    CONSTRAINT unique_lightsources
     PRIMARY KEY (SDO_OWNER, NAME)) ';
   exception
     when already_exists then NULL;
     when others then
       SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                              'EXCEPTION[sdovis3dschema.sql(' || $$PLSQL_LINE || ')1]: ' || SQLERRM); RAISE;
  end;
end;
/
SHOW ERRORS

begin
  execute immediate
 ' alter table SDO_LIGHTSOURCES_TABLE
   modify ( SDO_OWNER VARCHAR2(130)
              default sys_context(''userenv'', ''CURRENT_USER''),
            NAME VARCHAR2(130)) ';
  exception when others then
    SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
      'alter table SDO_LIGHTSOURCES_TABLE ERROR=' || SQLERRM);
end;
/
SHOW ERRORS

Create or replace view MDSYS.USER_SDO_LIGHTSOURCES AS
SELECT NAME, DESCRIPTION, TYPE, DEFINITION
FROM MDSYS.SDO_LIGHTSOURCES_TABLE
WHERE sdo_owner = sys_context('userenv', 'CURRENT_USER');

Create or replace view MDSYS.ALL_SDO_LIGHTSOURCES AS
SELECT SDO_OWNER OWNER, NAME, DESCRIPTION, TYPE, DEFINITION
FROM MDSYS.SDO_LIGHTSOURCES_TABLE;


declare
  already_exists exception;
  pragma exception_init(already_exists, -00955);
begin
  begin
   execute immediate 
'Create Table SDO_ANIMATIONS_TABLE (
  SDO_OWNER VARCHAR2(32) default sys_context(''userenv'', ''CURRENT_USER''),
  NAME  VARCHAR2(32) NOT NULL,
  DESCRIPTION VARCHAR2(4000),
  DEFINITION CLOB NOT NULL,
    CONSTRAINT unique_animations
     PRIMARY KEY (SDO_OWNER, NAME)) ';
   exception
     when already_exists then NULL;
     when others then
       SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                              'EXCEPTION[sdovis3dschema.sql(' || $$PLSQL_LINE || ')2]: ' || SQLERRM); RAISE;
  end;
end;
/
SHOW ERRORS

begin
  execute immediate
 ' alter table SDO_ANIMATIONS_TABLE
   modify ( SDO_OWNER VARCHAR2(130)
              default sys_context(''userenv'', ''CURRENT_USER''),
            NAME VARCHAR2(130)) ';
  exception when others then
    SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
      'alter table SDO_ANIMATIONS_TABLE ERROR=' || SQLERRM);
end;
/
SHOW ERRORS

Create or replace view MDSYS.USER_SDO_ANIMATIONS AS
SELECT NAME, DESCRIPTION,DEFINITION
FROM MDSYS.SDO_ANIMATIONS_TABLE
WHERE sdo_owner = sys_context('userenv', 'CURRENT_USER');

Create or replace view MDSYS.ALL_SDO_ANIMATIONS AS
SELECT SDO_OWNER OWNER, NAME, DESCRIPTION,DEFINITION
FROM MDSYS.SDO_ANIMATIONS_TABLE;


declare
  already_exists exception;
  pragma exception_init(already_exists, -00955);
begin
  begin
   execute immediate 
'Create Table SDO_VIEWFRAMES_TABLE (
  SDO_OWNER VARCHAR2(32) default sys_context(''userenv'', ''CURRENT_USER''),
  NAME  VARCHAR2(32) NOT NULL,
  DESCRIPTION VARCHAR2(4000),
  SCENE_NAME VARCHAR2(32) NOT NULL,
  DEFINITION CLOB NOT NULL,
    CONSTRAINT unique_viewframes
     PRIMARY KEY (SDO_OWNER, NAME)) ';
   exception
     when already_exists then NULL;
     when others then
       SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                              'EXCEPTION[sdovis3dschema.sql(' || $$PLSQL_LINE || ')3]: ' || SQLERRM); RAISE;
  end;
end;
/
SHOW ERRORS

begin
  execute immediate
 ' alter table SDO_VIEWFRAMES_TABLE
   modify ( SDO_OWNER VARCHAR2(130)
              default sys_context(''userenv'', ''CURRENT_USER''),
            NAME VARCHAR2(130),
            SCENE_NAME VARCHAR2(130)) ';
  exception when others then
    SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
      'alter table SDO_VIEWFRAMES_TABLE ERROR=' || SQLERRM);
end;
/
SHOW ERRORS

Create or replace view MDSYS.USER_SDO_VIEWFRAMES AS
SELECT NAME, DESCRIPTION, SCENE_NAME, DEFINITION
FROM MDSYS.SDO_VIEWFRAMES_TABLE
WHERE sdo_owner = sys_context('userenv', 'CURRENT_USER');

Create or replace View MDSYS.ALL_SDO_VIEWFRAMES AS
SELECT SDO_OWNER OWNER, NAME, DESCRIPTION, SCENE_NAME, DEFINITION
FROM MDSYS.SDO_VIEWFRAMES_TABLE;

declare
  already_exists exception;
  pragma exception_init(already_exists, -00955);
begin
  begin
   execute immediate 
'Create Table SDO_SCENES_TABLE (
  SDO_OWNER VARCHAR2(32) default sys_context(''userenv'', ''CURRENT_USER''),
  NAME  VARCHAR2(32) NOT NULL,
  DESCRIPTION VARCHAR2(4000),
  DEFINITION  CLOB NOT NULL,
  CONSTRAINT unique_scenes
    PRIMARY KEY (SDO_OWNER, NAME)) ';
   exception
     when already_exists then NULL;
     when others then
       SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                              'EXCEPTION[sdovis3dschema.sql(' || $$PLSQL_LINE || ')4]: ' || SQLERRM); RAISE;
  end;
end;
/
SHOW ERRORS

begin
  execute immediate
 ' alter table SDO_SCENES_TABLE
   modify ( SDO_OWNER VARCHAR2(130)
              default sys_context(''userenv'', ''CURRENT_USER''),
            NAME VARCHAR2(130)) ';
  exception when others then
    SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
      'alter table SDO_SCENES_TABLE ERROR=' || SQLERRM);
end;
/
SHOW ERRORS


-- drop view USER_SDO_SCENES;
Create or replace view MDSYS.USER_SDO_SCENES AS
SELECT NAME, DESCRIPTION,DEFINITION
FROM MDSYS.SDO_SCENES_TABLE
WHERE sdo_owner = sys_context('userenv', 'CURRENT_USER');

Create or replace view MDSYS.ALL_SDO_SCENES AS
SELECT SDO_OWNER OWNER, NAME, DESCRIPTION,DEFINITION
FROM MDSYS.SDO_SCENES_TABLE;

declare
  already_exists exception;
  pragma exception_init(already_exists, -00955);
begin
  begin
   execute immediate 
' Create Table SDO_3DTHEMES_TABLE (
  SDO_OWNER VARCHAR2(32) default sys_context(''userenv'', ''CURRENT_USER''),
  NAME  VARCHAR2(32) NOT NULL,
  DESCRIPTION VARCHAR2(4000),
  BASE_TABLE  VARCHAR2(64) NOT NULL,
  THEME_COLUMN  VARCHAR2(2048) NOT NULL,
  STYLE_COLUMN  VARCHAR2(32) NOT NULL,
  THEME_TYPE    VARCHAR2(32),
  DEFINITION CLOB NOT NULL,
    CONSTRAINT unique_3dthemes
        PRIMARY KEY (SDO_OWNER, NAME)) ';
   execute immediate 
  'CREATE INDEX SDO_3DTHEMES_IDX ON SDO_3DTHEMES_TABLE(SDO_OWNER,BASE_TABLE) ';
   exception
     when already_exists then NULL;
     when others then
       SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                              'EXCEPTION[sdovis3dschema.sql(' || $$PLSQL_LINE || ')5]: ' || SQLERRM); RAISE;
  end;
end;
/
SHOW ERRORS

begin
  execute immediate
 ' alter table SDO_3DTHEMES_TABLE
   modify ( SDO_OWNER VARCHAR2(130)
              default sys_context(''userenv'', ''CURRENT_USER''),
            NAME VARCHAR2(130),
            BASE_TABLE VARCHAR2(260),
            STYLE_COLUMN VARCHAR2(130)) ';
  exception when others then
    SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
      'alter table SDO_3DTHEMES_TABLE ERROR=' || SQLERRM);
end;
/
SHOW ERRORS

Create or replace view MDSYS.USER_SDO_3DTHEMES AS
SELECT NAME, DESCRIPTION, BASE_TABLE, THEME_COLUMN, STYLE_COLUMN, THEME_TYPE, DEFINITION
FROM MDSYS.SDO_3DTHEMES_TABLE
WHERE sdo_owner = sys_context('userenv', 'CURRENT_USER');

Create  or replace view MDSYS.ALL_SDO_3DTHEMES AS
SELECT SDO_OWNER OWNER, NAME, DESCRIPTION, BASE_TABLE, 
                  THEME_COLUMN, STYLE_COLUMN, THEME_TYPE, DEFINITION
FROM MDSYS.SDO_3DTHEMES_TABLE
WHERE
(exists
   (select table_name from SYS.all_tables
    where table_name=base_table
      and owner = sdo_owner
    union all
      select table_name from SYS.all_object_tables
      where table_name=base_table
      and owner = sdo_owner
    union all
    select view_name table_name from sys.all_views
    where  view_name=base_table
      and owner = sdo_owner));

-- Txfm view: Type can be:
--         AFFINE_<x> x being Translate, Rotate, Scale,.... affine types
--         COORDINATE_TRANSFORM (src_srid, tgt_srid) are used
--       or SERIES_TXFM (the txfmids varray is used)
declare
  already_exists exception;
  pragma exception_init(already_exists, -00955);
begin
  begin
   execute immediate 
' Create Table SDO_3DTXFMS_TABLE (
  SDO_OWNER VARCHAR2(32) default sys_context(''userenv'', ''CURRENT_USER''),
  NAME  VARCHAR2(32) NOT NULL,
  DESCRIPTION VARCHAR2(4000),
  TYPE       VARCHAR2(32) ,
  AFFINE_PARAMETERS SDO_NUMBER_ARRAY, -- numbers for Affine txfms, row-major
  COORD_TXFM_SRC_SRID   NUMBER,
  COORD_TXFM_TGT_SRID   NUMBER,
  TXFM_SERIES_IDS SDO_NUMBER_ARRAY,
    CONSTRAINT unique_3dtxfms
        PRIMARY KEY (SDO_OWNER, NAME)) ';
   exception
     when already_exists then NULL;
     when others then
       SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                              'EXCEPTION[sdovis3dschema.sql(' || $$PLSQL_LINE || ')6]: ' || SQLERRM); RAISE;
  end;
end;
/
SHOW ERRORS

begin
  execute immediate
 ' alter table SDO_3DTXFMS_TABLE
   modify ( SDO_OWNER VARCHAR2(130)
              default sys_context(''userenv'', ''CURRENT_USER''),
            NAME VARCHAR2(130)) ';
  exception when others then
    SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
      'alter table SDO_3DTXFMS_TABLE ERROR=' || SQLERRM);
end;
/
SHOW ERRORS

Create or replace view MDSYS.USER_SDO_3DTXFMS AS
SELECT NAME, DESCRIPTION, 
TYPE, AFFINE_PARAMETERS, COORD_TXFM_SRC_SRID,
COORD_TXFM_TGT_SRID, TXFM_SERIES_IDS 
FROM MDSYS.SDO_3DTXFMS_TABLE
WHERE sdo_owner = sys_context('userenv', 'CURRENT_USER');

Create  or replace view MDSYS.ALL_SDO_3DTXFMS AS
SELECT SDO_OWNER OWNER, NAME, DESCRIPTION, 
TYPE, AFFINE_PARAMETERS, COORD_TXFM_SRC_SRID,
COORD_TXFM_TGT_SRID, TXFM_SERIES_IDS 
FROM MDSYS.SDO_3DTXFMS_TABLE;

-- Grants,....

grant select,insert,delete,update on mdsys.user_sdo_lightsources to public;
grant select,insert,delete,update on mdsys.user_sdo_animations to public;
grant select,insert,delete,update on mdsys.user_sdo_viewframes to public;
grant select,insert,delete,update on mdsys.user_sdo_scenes to public;
grant select,insert,delete,update on mdsys.user_sdo_3dthemes to public;
grant select,insert,delete,update on mdsys.user_sdo_3dtxfms to public;

grant read on mdsys.all_sdo_lightsources to public;
grant read on mdsys.all_sdo_animations to public;
grant read on mdsys.all_sdo_viewframes to public;
grant read on mdsys.all_sdo_scenes to public;
grant read on mdsys.all_sdo_3dthemes to public;
grant read on mdsys.all_sdo_3dtxfms to public;

create  or replace public synonym user_sdo_lightsources 
for mdsys.user_sdo_lightsources;
create  or replace public synonym user_sdo_animations 
for mdsys.user_sdo_animations;
create  or replace public synonym user_sdo_viewframes 
for mdsys.user_sdo_viewframes;
create  or replace public synonym user_sdo_scenes for mdsys.user_sdo_scenes;
create  or replace public synonym user_sdo_3dthemes for mdsys.user_sdo_3dthemes;
create  or replace public synonym user_sdo_3dtxfms for mdsys.user_sdo_3dtxfms;

create  or replace public synonym all_sdo_lightsources 
for mdsys.all_sdo_lightsources;
create  or replace public synonym all_sdo_animations 
for mdsys.all_sdo_animations;
create  or replace public synonym all_sdo_viewframes for mdsys.all_sdo_viewframes;
create  or replace public synonym all_sdo_scenes for mdsys.all_sdo_scenes;
create  or replace public synonym all_sdo_3dthemes for mdsys.all_sdo_3dthemes;
create  or replace public synonym all_sdo_3dtxfms for mdsys.all_sdo_3dtxfms;

Rem ********************************************************************
Rem #16473696: Indicate Oracle-Supplied object
@?/rdbms/admin/sqlsessend.sql
Rem ********************************************************************


OHA YOOOO