MINI MINI MANI MO
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