Spec-Zone.ru › MySQL 5.7

11.4.4 Геометрическая корректность и валидность

Для значений геометрии MySQL различает понятия синтаксически корректного и геометрически валидного.

Геометрия считается синтаксически корректной, если она удовлетворяет условиям, таким как указанные в этом (неисчерпывающем) списке:

  • Линейные строки имеют как минимум две точки

  • Многоугольники имеют как минимум одну область

  • Области многоугольников замкнуты (первая и последняя точки совпадают)

  • Области многоугольников имеют как минимум 4 точки (минимальный многоугольник — это треугольник, у которого первая и последняя точки совпадают)

  • Коллекции не пустые (кроме GeometryCollection)

Геометрия считается геометрически валидной, если она синтаксически корректна и удовлетворяет условиям, таким как указанные в этом (неисчерпывающем) списке:

  • Многоугольники не самопересекающиеся

  • Внутренние области многоугольников лежат внутри внешней области

  • В многоугольниках не должно быть перекрывающихся многоугольников

Функции пространственных данных завершаются ошибкой, если геометрия не синтаксически корректна. Функции пространственного импорта, которые анализируют значения WKT или WKB, генерируют ошибку при попытке создать геометрию, которая не синтаксически корректна. Синтаксическая корректность также проверяется при попытке сохранить геометрии в таблицы.

Допускается вставка, выборка и обновление геометрически невалидных геометрий, но они должны быть синтаксически корректными. Из-за вычислительных затрат MySQL не проверяет явным образом геометрическую валидность. Пространственные вычисления могут обнаруживать некоторые случаи невалидных геометрий и генерировать ошибку, но они также могут возвращать неопределённый результат, не обнаружив невалидность. Приложения, которым требуются геометрически валидные геометрии, должны проверять их с помощью функции ST_IsValid().

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/geometry-well-formedness-validity.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API