Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Erstellen eines räumlichen Indexes auf Oracle

Bevor Sie die Tabelle indizieren, sollten Sie sie 'räumlich aktiviert' haben.
Versuchen Sie zu überprüfen, ob sie in den räumlichen Metadaten angezeigt wird:

SELECT * FROM USER_SDO_GEOM_METADATA
    WHERE TABLE_NAME = UPPER('floating_options')
      AND COLUMN_NAME = UPPER('area_geo');

Wenn es keine Ergebnisse gibt, stehen mehrere Optionen zur Verfügung.
Ein schmutziger Weg - Daten direkt einfügen

INSERT INTO USER_SDO_GEOM_METADATA
VALUES (UPPER('floating_options'),UPPER('area_geo'),
        mdsys.SDO_DIM_ARRAY(
             mdsys.SDO_DIM_ELEMENT('Easting', <lowest_x>, <highest_x>, <x_tolerance>),
             mdsys.SDO_DIM_ELEMENT('Northing', <lowest_y>, <highest_y>, <y_tolerance>)
        ), <SRID>);

Bitte ändern Sie die <Platzhalter> entsprechend

Bitte werfen Sie auch einen Blick auf https://community.oracle.com/thread/836452 ?tstart=0 oder http://gerardnico.com/wiki/oracle_spatial/metadata