Spectrum Spatial supports Oracle directly using the Oracle thin JDBC driver.

Spectrum Spatial treats Oracle as a read-write data source.

Supported Data Types

The Oracle data source data provider follows the same rules as the JDBC data source provider when mapping a non-spatial JDBC type to Spectrum Spatial’s type system. See the Oracle documentation for which Oracle data types are mapped to JDBC.

The Oracle data type SDO_GEOMETRY is the spatial data equivalent to Spectrum Spatial's supported data types: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, and GeometryCollection. Compound geometries (geometries with circular arcs) are not supported.

Determining the spatial metadata is done in several steps. The first step looks at the MAPINFO_MAPCATALOG table in the MAPINFO schema and if an entry exists identifies the geometry column in the Oracle table and the style column. If the table is identified as being an X/Y table then the two columns identified as the X and Y columns will be “fused” together into a geometry column in the Spatial table with the coordinate system specified in the MAPINFO_MAPCATALOG. If the MAPINFO_MAPCATALOG does not exists or the table to be opened does not have an entry then the USER_SDO_GEOM_METADATA is consulted for the name of the spatial column and its SRID.

The geometry column SDO_Geometry is expected to be indexed.

Primary Key

Spectrum Spatial follows the same rules as the JDBC data source provider for determining the primary key.

Read-Only Columns

Spectrum Spatial follows the same rules as the JDBC data source provider in determining whether a column is read-only.

MI SQL Optimizations

Oracle supports the same functions and operators as the JDBC data source provider.

Oracle supports the following spatial operators:

For more information see the appendix Delegation to Data Source Providers.


Spectrum Spatial queries the ALL_OBJECTS table for the timestamp of the table to be accessed. If it has changed, Spectrum Spatial will flush the metadata about the table from the cache and reload it before proceeding with the data access operation. See Data Source Volatility for more information.

XY Table Support

Oracle tables can be accessed as XY tables. See XY Table Support.