Общие сведения
В СУБД ЛИНТЕР для поддержки геометрических типов данных реализовано подмножество среды SQL с геометрическими типами (SQL with Geometry Types), спецификация которой предложена консорциумом OpenGIS. Столбец таблицы, в котором хранятся геометрические данные, имеет геометрический тип. Спецификация описывает набор геометрических типов данных SQL, а также функций, предназначенных для создания и анализа значений указанных геометрических типов данных.
В СУБД ЛИНТЕР поддерживается работа с геометрическими данными для BIG ENDIAN платформ и включает в себя следующее:
-
на MSBF-платформах бинарное представление значений геометрических типов хранится в нативном для этой платформы формате, для каждого значения геометрического типа в заголовке устанавливается байт
wkbByteOrder = wkbXDR /* Big Endian */; -
реализована функция автоматической конвертации, которая:
-
на Intel-платформах преобразовывает входящие значения геометрических типов с порядком байт Big Endian в значения с Little Endian;
-
на MSBF-платформах преобразовывает входящие значения геометрических типов с порядком байт Little Endian в значения с Big Endian.
Примечание
Функция автоматической конвертации не используется, если значения геометрических типов заносятся в БД не с помощью специализированных функций вида GeomFromWKB (PointFromWKB, PolyFromWKB, ...), а напрямую, с помощью функции HEX. В этом случае значения заносятся в БД "как есть" и их корректность можно проверить функцией GeoIsValid().
-
Геометрические типы данных позволяют генерировать, сохранять и анализировать географические данные, которые отражают элементы окружающего мира:
-
географические объекты (например, гора, водоем, город);
-
территории (например, область, задаваемая почтовым индексом);
-
местоположения (например, перекресток, как специфическое место пересечения двух дорог).
Для включения режима совместимости преобразования значений гео-типов из текстового вида в бинарный (режим совместимости с PostgreSQL) необходимо ядро СУБД запускать с ключом /COMPATIBILITY=PGGEO или выполнить SQL-команду SET COMPATIBILITY 'PGGEO'. В данном режиме координаты могут быть разделены пробелами и запятыми, в стандартном режиме они могут быть разделены только пробелами. При этом для каждой точки допустимо указание до 4-х координат из многомерного пространства, реально используются из которых только первые две.
Примечание
Режим совместимости преобразования значений гео-типов из текстового вида в бинарный поддерживается со сборки 6.0.17.92.