IsValidDetailed (тип данных geometry)

Применимо к:SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

Возвращает сообщение, позволяющее выявить проблемы с пространственным объектом, который не является допустимым. Если объект не является допустимым, возвращается только первая ошибка. Если объект является допустимым, возвращается значение 24400.

Синтаксис

  
.IsValidDetailed()  

Примечание.

Сведения о синтаксисе Transact-SQL для SQL Server 2014 (12.x) и более ранних версиях см . в документации по предыдущим версиям.

Типы возвращаемых данных

Тип возвращаемого значения SQL Server: nvarchar(max)

Тип возвращаемых данных CLR: string

Замечания

Возможные возвращаемые значения содержатся в следующей таблице:

Возвращаемое значение Description
24400 Действительно
24401 Не является допустимым, причины неизвестны.
24402 Не является допустимым, так как точка {0} — изолированная точка, которая не является допустимой в объекте этого типа.
24403 Не является допустимым, поскольку некоторая пара ребер многоугольника перекрывается.
24404 Не является допустимым, так как кольцо многоугольников {0} пересекает само себя или другое кольцо.
24405 Не является допустимым, поскольку некоторое кольцо многоугольников пересекает само себя или некоторое другое кольцо.
24406 Не является допустимым, так как кривая {0} превратилась в точку.
24407 Не является допустимым, так как кольцо многоугольников {0} свернулось в линию в точке {1}.
24408 Не является допустимым, так как кольцо многоугольников {0} не замкнуто.
24409 Не является допустимым, так как некоторая часть кольца многоугольников {0} лежит во внутренней области многоугольника.
24410 Не является допустимым, так как кольцо {0} — первое кольцо в многоугольнике, которое не является внешним кольцом.
24411 Не является допустимым, так как кольцо {0} лежит за пределами внешнего кольца {1} своего многоугольника.
24412 Не является допустимым, так как внутренняя область многоугольника с кольцами {0} и {1} не соединена.
24413 Не является допустимым из-за двух перекрывающихся ребер в кривой {0}.
24414 Не является допустимым, так как ребро кривой {0} перекрывает ребро кривой {1}.
24415 Не является допустимым, поскольку некоторый многоугольник имеет недопустимую структуру колец.
24416 Не является допустимым, так как в кривой {0} ребро, которое начинается в точке {1}, является либо линией, либо измененной дугой с диаметрально противоположными конечными точками.

Примеры

Следующий пример недопустимого пространственного объекта показывает, как действуют методы IsValidDetailed().

DECLARE @p GEOMETRY = 'Polygon((2 2, 4 4, 4 2, 2 4, 2 2))'  
SELECT @p.IsValidDetailed()  
--Returns: 24404: Not valid because polygon ring (1) intersects itself or some other ring.  

См. также

Расширенные методы экземпляров Geometry