MINI MINI MANI MO

Path : /proc/self/root/opt/oracle/product/18c/dbhomeXE/md/admin/
File Upload :
Current File : //proc/self/root/opt/oracle/product/18c/dbhomeXE/md/admin/sdoaggrh.sql

Rem sdoaggrh.sql
Rem
Rem Copyright (c) 2000, 2017, Oracle and/or its affiliates. 
Rem All rights reserved.
Rem
Rem    NAME
Rem      sdoaggrh.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/sdoaggrh.sql
Rem    SQL_SHIPPED_FILE: md/admin/sdoaggrh.sql
Rem    SQL_PHASE: SDOAGGRH
Rem    SQL_STARTUP_MODE: NORMAL
Rem    SQL_IGNORABLE_ERRORS: NONE
Rem    SQL_CALLING_FILE: sdo/admin/catmdlocp2.sql
Rem    END SQL_FILE_METADATA
Rem
Rem    MODIFIED   (MM/DD/YY)
Rem    yhu         09/25/17 - enh 13732846: SDO_AGGR_CONCAVEHULL()
Rem    yhu         05/22/17 - remove geom and dim
Rem    rjanders    05/10/17 - #26037683: Raise 'when other' exceptions
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    yhu         09/01/15 - LRG 14327407: ORA-21780: Maximum number of object
Rem                           durations exceeded in sdo_aggr_concat_lines
Rem    yhu         06/23/14 - bug 18922577: parallel aggr_union
Rem    rjanders    09/16/13 - OCCS: Remove hardtabs
Rem    rjanders    03/15/13 - #16473696: Start/End _ORACLE_SCRIPT
Rem                           initialization
Rem    sravada     07/29/04 - add exception handlers 
Rem    sravada     04/23/03 - change to SDO_AGGR_CONCAT_LINES
Rem    sravada     04/11/03 - add AggrConcat
Rem    sravada     04/12/02 - add type synonyms
Rem    sravada     04/11/01 - update the sdoaggrtype
Rem    sravada     12/21/00 - move union/cvxhull to oci
Rem    jcwang      09/29/00 - Add convexhull, centroid aggrgrate functions
Rem    sravada     07/27/00 - change according to UDAG signature change 
Rem                           for Terminate call
Rem    jcwang      07/05/00 - Add LRS aggregate function for concatenation
Rem    sravada     06/28/00 - Add headers for AggrUnion and Generic AggrType
Rem    sravada     06/28/00 - Created
Rem

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

Rem This is a generic type used for all aggregate functions requiring
Rem Geometry and Diminfo as arguements.

declare
  already_exists exception;
  pragma exception_init(already_exists, -00955);
begin
  begin
   execute immediate 
'create type SDOAggrType as Object (
Geometry mdsys.sdo_geometry,
Tolerance  NUMBER) ';
  exception
    when already_exists then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')1]: ' || SQLERRM); RAISE;
  end;
end;
/

grant execute on SDOAggrType to public;
CREATE OR REPLACE PUBLIC SYNONYM SDOAggrType for MDSYS.SDOAggrType;


declare
  already_exists exception;
  pragma exception_init(already_exists, -00955);
begin
  begin
   execute immediate
'create type SDOAggr AUTHID current_user as Object
(
  Geometry mdsys.sdo_geometry,
  Diminfo mdsys.sdo_dim_array,
  call_count  number,
  call_method varchar2(128),
  call_type   number,
  call_value  number,   
  static function odciaggregateinitialize(sctx OUT SDOAggr) return number,
  member function odciaggregateiterate(self IN OUT SDOAggr, 
               geom IN mdsys.SDOAggrType) return number,
  member function odciaggregateterminate(self IN SDOAggr,
                                         returnValue OUT mdsys.sdo_geometry,
                                          flags IN number)
                     return number,
  member function odciaggregatemerge(self IN OUT SDOAggr, 
                    valueB IN  SDOAggr) return number) ';
  exception
    when already_exists then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')2]: ' || SQLERRM); RAISE;
  end;
end;
/

show errors;

Rem type header for Aggregate UNION

declare
  type_not_found exception;
  pragma exception_init(type_not_found, -04043);
begin
  begin
  execute immediate 
   'drop type aggrunion ';
  exception
    when type_not_found then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')3]: ' || SQLERRM); RAISE;
 end;
end;
/

create type AggrUnion AUTHID current_user as Object
(
  context raw(4),
--Geometry mdsys.sdo_geometry,
--Dim      mdsys.sdo_dim_array,
  static function odciaggregateinitialize(sctx IN OUT AggrUnion) return number,
  member function odciaggregateiterate(self IN OUT AggrUnion, 
               geom IN mdsys.SDOAggrType) return number,
  member function odciaggregateterminate(self IN AggrUnion,
                                 returnValue OUT mdsys.sdo_geometry,
                                 flags IN number)
                     return number,
  member function odciaggregatemerge(self IN OUT AggrUnion, 
                    sctx2 IN  AggrUnion) return number,
--member function odciaggregatewrapcontext(self IN OUT AggrUnion) 
--                    return number,
  member function sdoaggregateiterate(self IN OUT AggrUnion, 
               geom IN mdsys.sdo_geometry, dim IN mdsys.SDO_DIM_ARRAY) 
  return number);
/

show errors;

Rem Type header for Aggregate MBR
declare
  type_not_found exception;
  pragma exception_init(type_not_found, -04043);
begin
  begin
  execute immediate 
   'drop type AggrMBR ';
  exception
    when type_not_found then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')4]: ' || SQLERRM); RAISE;
 end;
end;
/

create type AggrMBR AUTHID current_user as Object
(
  context mdsys.SDOAggr,
  static function odciaggregateinitialize(sctx OUT AggrMBR) return number,
  member function odciaggregateiterate(self IN OUT AggrMBR, 
               geom IN mdsys.sdo_geometry) return number,
  member function odciaggregateterminate(self IN AggrMBR,
                                        returnValue OUT mdsys.sdo_geometry,
                                          flags IN number)
                     return number,
  member function odciaggregatemerge(self IN OUT AggrMBR, 
                    valueB IN  AggrMBR) return number);
/

show errors;

Rem Type header for Aggregate LRS concatenation

declare
  type_not_found exception;
  pragma exception_init(type_not_found, -04043);
begin
  begin
  execute immediate 
   'drop type AggrLRSConcat ';
  exception
    when type_not_found then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')5]: ' || SQLERRM); RAISE;
 end;
end;
/
create type AggrLRSConcat AUTHID current_user as Object
(
  context mdsys.SDOAggr,
  static function odciaggregateinitialize(sctx OUT AggrLRSConcat) return number,
  member function odciaggregateiterate(self IN OUT AggrLRSConcat, 
                                       geom IN mdsys.SDOAggrType) return number,
  member function odciaggregateterminate(self IN AggrLRSConcat,
                                        returnValue OUT mdsys.sdo_geometry,
                                          flags IN number)
                     return number,
  member function odciaggregatemerge(self   IN OUT AggrLRSConcat, 
                                     valueB IN  AggrLRSConcat) return number);
/

show errors;


Rem Type header for Aggregate LRS concatenation

declare
  type_not_found exception;
  pragma exception_init(type_not_found, -04043);
begin
  begin
  execute immediate 
   'drop type AggrLRSConcat3D ';
  exception
    when type_not_found then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')6]: ' || SQLERRM); RAISE;
 end;
end;
/
create type AggrLRSConcat3D AUTHID current_user as Object
(
  context mdsys.SDOAggr,
  static function odciaggregateinitialize(sctx OUT AggrLRSConcat3D) return number,
  member function odciaggregateiterate(self IN OUT AggrLRSConcat3D, 
                                       geom IN mdsys.SDOAggrType) return number,
  member function odciaggregateterminate(self IN AggrLRSConcat3D,
                                           returnValue OUT mdsys.sdo_geometry,
                                          flags IN number)
                     return number,
  member function odciaggregatemerge(self   IN OUT AggrLRSConcat3D, 
                                     valueB IN  AggrLRSConcat3D) return number);
/

show errors;

Rem Type header for Aggregate COnvexHull

declare
  type_not_found exception;
  pragma exception_init(type_not_found, -04043);
begin
  begin
  execute immediate 
   'drop type AggrConvexHull ';
  exception
    when type_not_found then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')7]: ' || SQLERRM); RAISE;
 end;
end;
/
create type AggrConvexHull AUTHID current_user as Object
(
  context mdsys.SDOAggr,
  static function odciaggregateinitialize(sctx OUT AggrConvexHull) return number,
  member function odciaggregateiterate(self IN OUT AggrConvexHull, 
                                       geom IN mdsys.SDOAggrType) return number,
  member function odciaggregateterminate(self IN AggrConvexHull,
                                         returnValue OUT mdsys.sdo_geometry,
                                          flags IN number)
                     return number,
  member function odciaggregatemerge(self   IN OUT AggrConvexHull, 
                                     valueB IN  AggrConvexHull) return number);
/

show errors;

Rem Type header for Aggregate Centroid

declare
  type_not_found exception;
  pragma exception_init(type_not_found, -04043);
begin
  begin
  execute immediate 
   'drop type AggrCentroid ';
  exception
    when type_not_found then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')8]: ' || SQLERRM); RAISE;
 end;
end;
/
create type AggrCentroid AUTHID current_user as Object
(
  context mdsys.SDOAggr,
  static function odciaggregateinitialize(sctx OUT AggrCentroid) return number,
  member function odciaggregateiterate(self IN OUT AggrCentroid, 
                                       geom IN mdsys.SDOAggrType) return number,
  member function odciaggregateterminate(self IN AggrCentroid,
                                         returnValue OUT mdsys.sdo_geometry,
                                          flags IN number)
                     return number,
  member function odciaggregatemerge(self   IN OUT AggrCentroid, 
                                     valueB IN  AggrCentroid) return number);
/

show errors;

declare
  type_not_found exception;
  pragma exception_init(type_not_found, -04043);
begin
  begin
  execute immediate 
   'drop type AggrConcat ';
  exception
    when type_not_found then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || ')9]: ' || SQLERRM); RAISE;
 end;
end;
/
create type AggrConcat AUTHID current_user as Object
(
  context mdsys.SDOAggr,  
  -- use PL/SQL instead of Safe-C 
  -- context raw(4),
  static function odciaggregateinitialize(sctx IN OUT AggrConcat) 
              return number,
  member function odciaggregateiterate(self IN OUT AggrConcat, 
               geom IN mdsys.SDO_GEOMETRY) return number,
  member function odciaggregateterminate(self IN AggrConcat,
                                 returnValue OUT mdsys.sdo_geometry,
                                 flags IN number)
                     return number,
  member function odciaggregatemerge(self IN OUT AggrConcat, 
                    sctx2 IN  AggrConcat) return number);
/

show errors;

Rem type header for Aggregate CONCAVEHULL

declare
  type_not_found exception;
  pragma exception_init(type_not_found, -04043);
begin
  begin
  execute immediate 
   'drop type aggrconcavehull ';
  exception
    when type_not_found then NULL;
    when others then
      SYS.DBMS_SYSTEM.KSDWRT(SYS.DBMS_SYSTEM.TRACE_FILE,
                             'EXCEPTION[sdoaggrh.sql(' || $$PLSQL_LINE || 
                             ')10]: ' || SQLERRM); RAISE;
 end;
end;
/

create type AggrConcavehull AUTHID current_user as Object
(
  context raw(4),
  static function odciaggregateinitialize(sctx IN OUT AggrConcavehull) 
                     return number,
  member function odciaggregateiterate(self IN OUT AggrConcavehull, 
               geom IN mdsys.SDOAggrType) return number,
  member function odciaggregateterminate(self IN AggrConcavehull,
                                 returnValue OUT mdsys.sdo_geometry,
                                 flags IN number)
                     return number,
  member function odciaggregatemerge(self IN OUT AggrConcavehull, 
                    sctx2 IN  AggrConcavehull) return number,
  member function sdoaggregateiterate(self IN OUT AggrConcavehull, 
               geom IN mdsys.sdo_geometry, dim IN mdsys.SDO_DIM_ARRAY) 
  return number);
/

show errors;







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


OHA YOOOO