File Geodatabase

Spectrum Spatial supports the File Geodatabase data provider for Windows and Linux. An ESRI file geodatabase is a collection of files in a folder on disk that can store, query, and manage both spatial and non-spatial data. The ESRI FileGDB SDK API (version 1.5.1) is used for the data provider to access file geodatabase. Check the limitations of this API for the supported file geodatabase versions.

Spectrum Spatial treats file geodatabase as a read-only data source. Spectrum Spatial supports file geodatabase versions 10.0 and higher.

Accessing Data in a File Geodatabase

A file geodatabase has an extension of .gdb and is essentially a folder containing a collection of files. To access file geodatabase data with Spectrum Spatial, create a file-system named connection using Spectrum Spatial Manager. A connection is a path to the file geodatabase folder (this is similar to working with TAB and shapefiles) that named tables can use. A file geodatabase named table (Table, or Feature Class) should start with a backslash (\). Optionally, the named table has an SRSName for when the data provider does not recognize the original Coordinate Reference System (CRS).

You use file geodatabase named tables as you would any other data provider Named Tables. Sample data for file geodatabase is available in the /Samples/NamedTables folder in the repository (such as USAGeodatabaseTable).

Note: The Map Uploader may not support file geodatabase.

Supported Data Types

Supported datatype from file geodatabases is null, short, int, float, double, string, DateTime, and geometry (Point, Line, Polygon, MultiPoint, MultiLine, and MultiPolygon in two dimensions).

Primary Key

The file geodatabase OBJECTID is used as the primary key. This column is read-only.

XY Table Support

The File Geodatabase data source provider does not support XY tables Support for XY Tables.

Insert, Update, and Delete Support

Unsupported in this version.

MI SQL Optimizations

File Geodatabase supports the same non-spatial functions and operators as the Generic JDBC data source provider along with the spatial operator EnvelopesIntersect.

Table joins from the same and across different geodatabases are supported but not delegated to the data provider.

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

Volatility

Volatility is any change to the table schema, such as adding or dropping a column or changing an index on a column. When a table changes, Spectrum Spatial flushes the metadata of the table from the cache and reloads it before proceeding with a data access operation. The data provider monitors the timestamp of the file named “timestamps” under the geodatabase folder. Users can touch the file to trigger the reloading manually. See Data Source Volatility for more information.

File Geodatabase and MAPINFO_MAPCATALOG

The File Geodatabase data provider in Spectrum Spatial does not use a map catalog (a MAPINFO_MAPCATALOG).

Coordinate System Support

The File Geodatabase data provider may not be able to recognize all the spatial reference systems (SRS) of feature classes (tables) in a file geodatabase. In this case, users have to explicitly specify an SRSName in Spatial Manager when creating a named table. Otherwise, an exception displays when opening the table.