Чтение онлайн

ЖАНРЫ

MySQL: руководство профессионала

Паутов Алексей В.

Шрифт:

4.4.1. Пространственные типы данных в MySQL

MySQL имеет типы данных, которые соответствуют классам OpenGIS. Часть этих типов хранит одиночные значения геометрии:

GEOMETRY

POINT

LINESTRING

POLYGON

GEOMETRY может сохранять значения геометрии любого типа. Другие типы с одиночным значением (POINT, LINESTRING и POLYGON) ограничивают их значения специфическим типом геометрии.

Другие типы данных хранят совокупности значений:

MULTIPOINT

MULTILINESTRING

MULTIPOLYGON

GEOMETRYCOLLECTION

GEOMETRYCOLLECTION

может сохранять совокупность объектов любого типа. Другие типы совокупности (MULTIPOINT, MULTILINESTRING, MULTIPOLYGON и GEOMETRYCOLLECTION) ограничивают элементы совокупности имеющими специфический тип геометрии.

4.4.2. Создание пространственных значений

Этот раздел описывает, как создать пространственные значения, использующие функции Well-Known Text и Well-Known Binary, которые определены в стандарте OpenGIS, и применить MySQL-функции.

4.4.2.1. Создание значений геометрии через функции WKT

MySQL обеспечивает ряд функций, которые берут как входные параметры представление Well-Known Text и, факультативно, пространственный идентификатор системы ссылки (SRID). Они возвращают соответствующую геометрию.

GeomFromText принимает WKT любого типа геометрии как первый параметр. Реализация также обеспечивает специфические для типа функции для конструкции значений геометрии каждого типа.

GeomCollFromText(wkt[,srid]), GeometryCollectionFromText(wkt[,srid])

Создает значение GEOMETRYCOLLECTION, использующее WKT представление и SRID.

GeomFromText(wkt[,srid]), GeometryFromText(wkt[,srid])

Создает значение геометрии из любого типа, использующего WKT представление и SRID.

LineFromText(wkt[,srid]), LineStringFromText(wkt[,srid])

Создает значение LINESTRING, использующее WKT представление и SRID.

MLineFromText(wkt[,srid]), MultiLineStringFromText(wkt[,srid])

Создает значение MULTILINESTRING, использующее WKT представление и SRID.

MPointFromText(wkt[,srid]), MultiPointFromText(wkt[,srid])

Создает значение MULTIPOINT, использующее WKT представление и SRID.

MPolyFromText(wkt[,srid]), MultiPolygonFromText(wkt[,srid])

Создает значение MULTIPOLYGON, использующее WKT представление и SRID.

PointFromText(wkt[,srid])

Создает значение POINT, использующее WKT представление и SRID.

PolyFromText(wkt[,srid]), PolygonFromText(wkt[,srid])

Создает значение POLYGON, использующее WKT представление и SRID.

Спецификация OpenGIS также определяет следующие

факультативные функции, которые MySQL не выполняет. Эти функции создают значения Polygon или MultiPolygon, основанные на WKT представлении совокупности колец или закрытых значений LineString. Эти значения могут пересекаться.

BdMPolyFromText(wkt,srid)

Создает значение MultiPolygon из MultiLineString в формате WKT, содержащем произвольную совокупность закрытых значений LineString.

BdPolyFromText(wkt,srid)

Создает значение Polygon из MultiLineString в формате WKT, содержащем произвольную совокупность закрытых значенийLineString.

4.4.2.2. Создание значенией геометрии с помощью функций WKB

MySQL обеспечивает ряд функций, которые берут как входные параметры BLOB, содержащий представление Well-Known Binary и, факультативно, пространственный идентификатор системы ссылки (SRID). Они возвращают соответствующую геометрию.

GeomFromWKB принимает WKB любого типа геометрии как первый параметр. Реализация также обеспечивает специфические для типа функции для конструкции значений геометрии каждого типа геометрии.

GeomCollFromWKB(wkb[,srid]), GeometryCollectionFromWKB(wkb[,srid])

Создает значение GEOMETRYCOLLECTION, использующее WKB представление и SRID.

GeomFromWKB(wkb[,srid]), GeometryFromWKB(wkb[,srid])

Создает значение геометрии из любого типа, использующего WKB представление и SRID.

LineFromWKB(wkb[,srid]), LineStringFromWKB(wkb[,srid])

Создает значение LINESTRING, использующее WKB представление и SRID.

MLineFromWKB(wkb[,srid]), MultiLineStringFromWKB(wkb[,srid])

Создает значение MULTILINESTRING, использующее WKB представление и SRID.

MPointFromWKB(wkb[,srid]), MultiPointFromWKB(wkb[,srid])

Создает значение MULTIPOINT, использующее WKB представление и SRID.

MPolyFromWKB(wkb[,srid]), MultiPolygonFromWKB(wkb[,srid])

Создает значение MULTIPOLYGON, использующее WKB представление и SRID.

PointFromWKB(wkb[,srid])

Создает значение POINT, использующее WKB представление и SRID.

PolyFromWKB(wkb[,srid]), PolygonFromWKB(wkb[,srid])

Создает значение POLYGON, использующее WKB представление и SRID.

Спецификация OpenGIS также описывает факультативные функции для построения значений Polygon или MultiPolygon, основанных на WKB представлении совокупности колец или закрытых значений LineString. Эти значения могут пересекаться. MySQL не выполняет эти функции:

Поделиться с друзьями: