DBA Data[Home] [Help]

MDSYS.SDO_ROUTER_PARTITION dependencies on NUM_ARRAY

Line 779: EXECUTE IMMEDIATE 'CREATE TABLE node_part(vertex_id NUMBER, x NUMBER, y NUMBER, p_id NUMBER, outedges mdsys.num_array, inedges mdsys.num_array)

775: END IF;
776:
777: log_message('INFO: create and load node_part table');
778:
779: EXECUTE IMMEDIATE 'CREATE TABLE node_part(vertex_id NUMBER, x NUMBER, y NUMBER, p_id NUMBER, outedges mdsys.num_array, inedges mdsys.num_array)
780: STORAGE (maxextents unlimited), NOLOGGING';
781:
782: EXECUTE IMMEDIATE 'INSERT /*+ APPEND */ into node_part
783: SELECT n.node_id, n.geometry.sdo_point.x, n.geometry.sdo_point.y, 0, null, null

Line 870: EXECUTE IMMEDIATE 'CREATE TABLE restricted_nodes(node_id NUMBER, inedges mdsys.num_array, outedges mdsys.num_array)

866: END IF;
867:
868: log_message('INFO: Create and load the restricted_nodes table');
869:
870: EXECUTE IMMEDIATE 'CREATE TABLE restricted_nodes(node_id NUMBER, inedges mdsys.num_array, outedges mdsys.num_array)
871: STORAGE (maxextents unlimited), NOLOGGING';
872:
873: -- Find all nodes that are the start or end point of a restricted edge.
874: EXECUTE IMMEDIATE 'INSERT /*+ APPEND */ INTO restricted_nodes

Line 888: e_array1 mdsys.num_array;

884: IS
885: TYPE CURSOR_TYPE IS REF CURSOR;
886: e_cursor CURSOR_TYPE;
887: e_id NUMBER;
888: e_array1 mdsys.num_array;
889: e_array2 mdsys.num_array;
890: n_cursor CURSOR_TYPE;
891: n_id NUMBER;
892: stmt VARCHAR2(512);

Line 889: e_array2 mdsys.num_array;

885: TYPE CURSOR_TYPE IS REF CURSOR;
886: e_cursor CURSOR_TYPE;
887: e_id NUMBER;
888: e_array1 mdsys.num_array;
889: e_array2 mdsys.num_array;
890: n_cursor CURSOR_TYPE;
891: n_id NUMBER;
892: stmt VARCHAR2(512);
893: BEGIN

Line 899: stmt := 'CREATE TABLE edge_array_tmp(vertex_id NUMBER, outedges mdsys.num_array, inedges mdsys.num_array)

895: IF (table_exists('edge_array_tmp') = 'TRUE') THEN
896: EXECUTE IMMEDIATE 'DROP TABLE edge_array_tmp';
897: END IF;
898:
899: stmt := 'CREATE TABLE edge_array_tmp(vertex_id NUMBER, outedges mdsys.num_array, inedges mdsys.num_array)
900: STORAGE (maxextents unlimited), NOLOGGING';
901:
902: EXECUTE IMMEDIATE stmt;
903:

Line 911: e_array1 := mdsys.num_array();

907: LOOP
908: FETCH n_cursor into n_id;
909: EXIT WHEN n_cursor%NOTFOUND;
910:
911: e_array1 := mdsys.num_array();
912:
913: -- Build an array of outedges for a particular node
914: OPEN e_cursor for 'select edge_id from edge_part where source_id=:id' using n_id;
915: LOOP

Line 924: e_array2 := mdsys.num_array();

920: e_array1(e_array1.count) := e_id;
921: END LOOP;
922: CLOSE e_cursor;
923:
924: e_array2 := mdsys.num_array();
925:
926: -- Build an array of inedges for a particular node
927: OPEN e_cursor for 'select edge_id from edge_part where target_id=:id' using n_id;
928: LOOP

Line 1027: turn_restrictions mdsys.num_array)

1023: log_message('INFO: create and load edge_part');
1024: EXECUTE IMMEDIATE 'CREATE TABLE edge_part(edge_id NUMBER, source_id NUMBER,
1025: target_id NUMBER, source_p_id NUMBER, target_p_id NUMBER,
1026: func_class NUMBER, length NUMBER, speed_limit NUMBER, divider VARCHAR2(1),
1027: turn_restrictions mdsys.num_array)
1028: STORAGE (maxextents unlimited), NOLOGGING';
1029:
1030: EXECUTE IMMEDIATE 'INSERT /*+ APPEND */ INTO edge_part
1031: SELECT edge_id, start_node_id, end_node_id,