MySQL 9.0 发行说明
对于几何值,MySQL 区分语法格式良好和几何有效的概念。
如果几何图形满足如下(非详尽)列表中的条件,则它在语法上格式良好:
LineString 至少有两个点
Polygon 至少有一个环
Polygon 环是闭合的(第一个和最后一个点相同)
Polygon 环至少有 4 个点(最小多边形是一个三角形,第一个和最后一个点相同)
集合不为空(
GeometryCollection
除外)
如果几何图形在语法上格式良好并满足如下(非详尽)列表中的条件,则它在几何上有效:
Polygon 不自相交
Polygon 内部环位于外部环内
MultiPolygon 没有重叠的多边形
如果几何图形在语法上格式不正确,则空间函数将失败。解析 WKT 或 WKB 值的空间导入函数在尝试创建语法格式不正确的几何图形时会引发错误。尝试将几何图形存储到表中时,也会检查语法格式的正确性。
允许插入、选择和更新几何无效的几何图形,但它们必须在语法上格式良好。由于计算开销,MySQL 不会显式检查几何有效性。空间计算可能会检测到某些无效几何图形的情况并引发错误,但它们也可能返回未定义的结果而不会检测到无效性。需要几何有效几何图形的应用程序应使用 ST_IsValid()
函数检查它们。