MySQL 具有与 OpenGIS 类相对应的空间数据类型。空间数据类型有GEOMETRY、POINT、LINESTRING、POLYGON、MULTIPOINT、MULTILINESTRING、MULTIPOLYGON、GEOMETRYCOLLECTION。
某些空间数据类型保存单个几何值:
GEOMETRY
POINT
LINESTRING
POLYGON
GEOMETRY可以存储任何类型的几何值。其他单值类型(POINT、 LINESTRING和POLYGON)将其值限制为特定的几何类型。
其他空间数据类型保存值的集合:
MULTIPOINT
MULTILINESTRING
MULTIPOLYGON
GEOMETRYCOLLECTION
GEOMETRYCOLLECTION可以存储任何类型的对象的集合。其他集合类型(MULTIPOINT、 MULTILINESTRING和 MULTIPOLYGON)将集合成员限制为具有特定几何类型的集合成员。
示例:要创建名为 name 的表,geom该表具有名为 name 的列g,该列可以存储任何几何类型的值,请使用以下语句:
CREATE TABLE geom (g GEOMETRY);
SPATIAL可以在空间列上创建索引 NOT NULL,因此如果您计划对该列建立索引,请声明它NOT NULL:
CREATE TABLE geom (g GEOMETRY NOT NULL);