11.4.1 空间数据类型

MySQL 具有与 OpenGIS 类相对应的空间数据类型。 第 11.4.2 节“ OpenGIS 几何模型”中描述了这些类型的基础。

一些空间数据类型保存单个几何值:

  • GEOMETRY

  • POINT

  • LINESTRING

  • POLYGON

GEOMETRY可以存储任何类型的几何值。其他单值类型(POINTLINESTRINGPOLYGON)将其值限制为特定的几何类型。

其他空间数据类型包含值的集合:

  • MULTIPOINT

  • MULTILINESTRING

  • MULTIPOLYGON

  • GEOMETRYCOLLECTION

GEOMETRYCOLLECTION可以存储任何类型的对象的集合。其他集合类型(MULTIPOINTMULTILINESTRINGMULTIPOLYGON)将集合成员限制为具有特定几何类型的成员。

示例:要创建一个名为geom的 table,该 table 具有一个名为g的列,该列可以存储任何几何类型的值,请使用以下语句:

CREATE TABLE geom (g GEOMETRY);

可以在NOT NULL个空间列上创建SPATIAL个索引,因此,如果您打算为该列构建索引,请声明NOT NULL

CREATE TABLE geom (g GEOMETRY NOT NULL);

有关显示如何在 MySQL 中使用空间数据类型的其他示例,请参见第 11.4.5 节“创建空间列”