MINI MINI MANI MO

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

Rem
Rem $Header: sdo/admin/sdounloadj.sql /main/15 2017/05/26 16:34:19 rjanders Exp $
Rem
Rem sdounloadj.sql
Rem
Rem Copyright (c) 2007, 2017, Oracle and/or its affiliates. 
Rem All rights reserved.
Rem
Rem    NAME
Rem      sdounloadj.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/sdounloadj.sql
Rem    SQL_SHIPPED_FILE: md/admin/sdounloadj.sql
Rem    SQL_PHASE: DOWNGRADE
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    05/10/17 - #26037683: Raise 'when other' exceptions
Rem    rjanders    04/27/17 - Correct "SQL_PHASE" metadata values
Rem    rjanders    04/17/17 - More 'exception when others' changes
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    sravada     06/17/15 - drop synonyms
Rem    begeorge    05/28/15 - drop sdondmappsdata.jar
Rem    sravada     04/17/15 - drop sdondmapps.jar
Rem    sravada     04/19/13 - drop public synonyms as well
Rem    rjanders    03/15/13 - #16473696: Start/End _ORACLE_SCRIPT
Rem                           initialization
Rem    sravada     09/29/10 - bug 10119184
Rem    alwu        02/22/08 - comment out dropjava for sdordf.jar
Rem    sravada     05/13/07 - Created
Rem


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

ALTER SESSION SET CURRENT_SCHEMA = SYS;

-- drop sdonm.jar
call dbms_java.grant_permission('SYSTEM', 'java.io.FilePermission',
                                 '<<ALL FILES>>', 'read');
call dbms_java.grant_permission('MDSYS', 'SYS:java.io.FilePermission',
                                'md/jlib/*', 'read');
call dbms_java.grant_permission('MDSYS', 'SYS:java.lang.RuntimePermission',
                                'getClassLoader', null);
call dbms_java.grant_permission('ORDSYS', 'SYS:java.lang.RuntimePermission',
                                'getClassLoader', null);


call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdonm.jar');
call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdoapi.jar');
call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdotopo.jar');
call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdoutl.jar');
call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdogr.jar');
call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdogcdr.jar');
call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/routepartition.jar');
call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdondmappsdata.jar');
-- drop sdotype.jar
call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdotype.jar');

-- 10.2 version
declare
 stmt varchar2(400);
 javac varchar2(300);
 obj_name varchar2(300);
 type                    cursor_type is REF CURSOR;
 query_crs               cursor_type ;
  synonym_not_found exception;
  pragma exception_init(synonym_not_found, -01432);
begin

  stmt := ' select NAME from all_java_classes ' ||
          ' where owner=''MDSYS'' ';
   OPEN query_crs FOR stmt;
  LOOP
  BEGIN
    fetch query_crs into  javac;
    EXIT when query_crs%NOTFOUND ;
    javac := SYS.DBMS_ASSERT.ENQUOTE_NAME(javac,false);
    begin
     EXECUTE immediate ' drop java class MDSYS.'||javac;
    EXCEPTION
     WHEN OTHERS THEN
    SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                           'EXCEPTION[sdounloadj.sql(' || $$PLSQL_LINE || ')1]: ' || SQLERRM); RAISE;
    end;
  end;
  END LOOP;
  close query_crs;

  -- drop public synonyms for Java classes 
  stmt := ' select SYNONYM_NAME from all_synonyms ' ||
          ' where  OWNER = ''PUBLIC'' and TABLE_OWNER = ''MDSYS'' ' ||
          '  and SYNONYM_NAME like ''%/%'' ';
   OPEN query_crs FOR stmt;
  LOOP
  BEGIN
    fetch query_crs into  javac;
    EXIT when query_crs%NOTFOUND ;
    javac := SYS.DBMS_ASSERT.ENQUOTE_NAME(javac,false);
    begin
      EXECUTE immediate ' drop public synonym '||javac;
      EXCEPTION
        WHEN synonym_not_found THEN NULL;
        WHEN OTHERS THEN
          SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                                 'EXCEPTION[sdounloadj.sql(' || $$PLSQL_LINE || ')2]: ' || SQLERRM); RAISE;
    end;
  end;
  END LOOP;
  close query_crs;


-- PUBLIC SYNONYM for JAVA CLASSES
  stmt := ' select OBJECT_NAME from SYS.all_objects ' ||
          ' where OWNER = ''PUBLIC'' and  ' ||
          ' OBJECT_NAME like ''oracle/spatial%'' ';
  
   OPEN query_crs FOR stmt;
  LOOP
  BEGIN
    fetch query_crs into  obj_name;
    EXIT when query_crs%NOTFOUND ;
    obj_name := sys.dbms_assert.enquote_name(obj_name, false);

    begin
      EXECUTE immediate ' drop public synonym '||
             obj_name;
    end;

  end;
  END LOOP;
  close query_crs;

end;
/





-- drop RDF jar. 
-- Seems that this script is only invoked as part of loce111.sql 
-- RDF/OWL cannot drop this jar because if this jar is dropped, then in the
-- case that downgrade is followed by upgrade, we no longer have this jar.
-- call dbms_java.dropjava('-force -synonym -schema MDSYS md/jlib/sdordf.jar');

call dbms_java.revoke_permission('MDSYS','SYS:java.io.FilePermission',
                                 'md/jlib/*','read');




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


OHA YOOOO