数据库和空间数据仓库中的空间类型

空间数据类型可存储用于显示地图上数据的空间属性。 许多数据库自动包含空间数据类型。 其他数据库需要进行一些配置或安装方可使用空间数据类型。 以下部分列出了 ArcGIS 支持的所有数据库以及每种数据库支持的空间数据类型,并说明了每种数据库中要使用空间数据类型所需的配置(如果存在)。

Amazon Redshift

ArcGIS 支持 Redshift 几何类型,该类型默认包含在 Redshift 中。

Dameng

Dameng 包含自己的 ST_Geometry 空间类型;但是,必须将其初始化

Google BigQuery

ArcGIS 支持 BigQuery 地理类型,该类型默认包含在 BigQuery 中。

IBM Db2

Db2 数据库包含自己的 ST_Geometry 空间类型。 无需配置即可使用。

Microsoft SQL Server

SQL ServerAzure SQL DatabaseAmazon RDS for SQL Server 包含两种空间类型:几何和地理。 由于上述空间类型可自动显示,无需安装或配置。

Oracle

ArcGIS 在 Oracle 中支持两种空间类型:ST_Geometry 和 SDO_Geometry。

可以使用创建空间类型地理处理工具在 Oracle 数据库中安装 ST_Geometry 空间类型。 有关说明,请参阅Oracle 数据库添加 ST_Geometry 类型

如果要定义在图层上执行空间函数的查询,还需要将 Oracle extproc 配置为使用 ST_Geometry。

Oracle 定位器对象(包括 SDO_Geometry 类型)默认位于 Oracle 数据库中。 因此,可在不进行其他安装的情况下访问 SDO_Geometry 类型;但要访问所有 SDO_Geometry 函数,可能需要在数据库中安装 Oracle Spatial。

Oracle 数据库即服务产品

ArcGIS 仅支持受支持的数据库即服务选项(例如 Amazon RDS for Oracle)中的 SDO_Geometry 数据类型。

PostgreSQL

ArcGIS 在 PostgreSQL 中支持三种空间类型:ST_Geometry、PostGIS 几何和 PostGIS 地理。 数据库中可以安装一种或所有类型。

要在 PostgreSQL 中安装 ST_Geometry 类型,请将 st_geometry 库放置在 PostgreSQL 安装程序的 lib 目录中。 然后,使用创建空间类型地理处理工具在数据库中创建 ST_Geometry 类型。 有关说明,请参阅PostgreSQL 数据库添加 ST_Geometry 类型

PostGIS 是第三方开源安装程序。 要使用 PostGIS 几何或地理类型,请在 PostgreSQL 数据库集群中安装 PostGIS。 安装以后,使用 PostGIS 模板数据库创建包含 PostGIS 类型的数据库,或将现有数据库配置为使用 PostGIS 类型。 有关 PostGIS 安装和配置的信息,请参阅 PostGIS 文档。

PostgreSQL 数据库即服务产品

ArcGIS 仅支持受支持的数据库即服务选项(例如 Amazon Aurora (PostgreSQL-compatible edition)Amazon Relational Database Service (RDS) for PostgreSQLMicrosoft Azure Database for PostgreSQL)中的 PostGIS 几何类型。

SAP HANA

SAP HANA ST_Geometry 类型用于 SAP HANASAP HANA Cloud 中的空间数据存储。 默认包含 ST_Geometry 类型。

Snowflake

ArcGIS 支持 Snowflake 地理类型,该类型默认包含在 Snowflake 中。

SQLite

要在 SQLite 数据库中存储空间数据,可安装 SpatiaLite、向数据库添加 ST_Geometry 类型或创建 GeoPackage。 有关详细信息和说明,请参阅在空间上启用 SQLite 数据库

此外,也可使用创建 SQLite 数据库地理处理工具创建使用 ST_Geometry 或 SpatiaLite 存储的 GeoPackageSQLite 数据库。

Teradata Vantage

Teradata Vantage 包含空间数据类型;无需配置即可使用。 但是,请注意,ArcGIS 要求将空间列命名为 shape。 如果该列的名称不是 shape,则需在表中创建一个视图并将该空间列名称的别名设为 shape