Spatial types in databases

Spatial data types store the spatial attributes that allow you to visualize data on a map. Many databases automatically include spatial data types. Others require some configuration or an installation to use a spatial data type. The following sections list all the databases and data warehouses that ArcGIS supports, what spatial data types are supported in each, and what, if any, configuration is needed to use a spatial data type in each.

Amazon Redshift

ArcGIS supports the Redshift geometry type, which is present in Redshift by default.

Dameng

Dameng includes its own ST_Geometry spatial type; however, you must initialize it.

Google BigQuery

ArcGIS supports the BigQuery geography type, which is present in BigQuery by default.

IBM Db2

Db2 databases include their own ST_Geometry spatial type. No configuration is needed to use it.

Microsoft SQL Server

SQL Server, Azure SQL Database, and Amazon RDS for SQL Server include two spatial types: geometry and geography. You do not have to install or configure these spatial types, as they are present automatically.

Oracle

ArcGIS supports two spatial types in Oracle: ST_Geometry and SDO_Geometry.

Use the Create Spatial Type geoprocessing tool to install the ST_Geometry spatial type in an Oracle database (one that does not contain a geodatabase). See Add the ST_Geometry type to an Oracle database for instructions.

If you will define queries that perform spatial functions on your layers, you also need to configure the Oracle extproc to use ST_Geometry.

The SDO_Geometry type and objects are present by default in Oracle databases. Therefore, you can access the SDO_Geometry type without additional installations, but to access all SDO_Geometry functions, you may need to configure Oracle Spatial in the database.

Oracle database-as-a-service offerings

ArcGIS supports only the SDO_Geometry spatial data type in supported database-as-a-service options.

PostgreSQL

ArcGIS supports three spatial types in PostgreSQL: ST_Geometry, PostGIS geometry, and PostGIS geography. Install one or all of these types in your database.

To install the ST_Geometry type in a PostgreSQL database, place the st_geometry library in the PostgreSQL installation's lib directory. Next, for PostgreSQL databases that do not contain a geodatabase, use the Create Spatial Type geoprocessing tool to create the ST_Geometry type in the database. See Add the ST_Geometry type to a PostgreSQL database for instructions.

PostGIS is a third-party, open source installation. To use the PostGIS geometry or geography type, install PostGIS on the PostgreSQL database cluster. Once installed, either use the PostGIS template database to create a database containing the PostGIS types, or configure an existing database to use the PostGIS types. See the PostGIS documentation for information about the installation and configuration of PostGIS.

PostgreSQL database-as-a-service offerings

ArcGIS supports only the PostGIS geometry type in supported database-as-a-service options.

SAP HANA

The SAP HANA ST_Geometry type is used for spatial data storage in SAP HANA and SAP HANA Cloud. The ST_Geometry type is included by default.

Snowflake

ArcGIS supports the Snowflake geography type, which is present in Snowflake by default.

SQLite

To store spatial data in a SQLite database, you can either install SpatiaLite, add the ST_Geometry type to the database, or create a GeoPackage. See Spatially enable an SQLite database for more information and instructions.

Alternatively, you can use the Create SQLite Database geoprocessing tool to create a GeoPackage or SQLite database that uses ST_Geometry or SpatiaLite storage.

Teradata Vantage

Teradata Vantage includes a spatial data type; no configuration is needed to use it. Be aware, however, that ArcGIS requires that the spatial column be named shape. If the name of the column is not shape, create a view on the table and set the alias of the spatial column to shape.