Compartilhar via


IsValidDetailed (DataType geométrico)

Retorna uma mensagem que pode ajudar a identificar problemas com um objeto espacial que não é válido. Quando o objeto não é válido, apenas o primeiro erro é retornado. Quando o objeto é válido, um valor de 24400 é retornado.

Aplica-se a: SQL Server (SQL Server 2012 até a versão atual), Banco de dados SQL do Windows Azure (versão inicial até a versão atual).

Sintaxe

.IsValidDetailed()

Tipos de retorno

SQL Server Tipo de retorno: nvarchar(max)

Tipo de retorno CLR: string

Comentários

A tabela a seguir contém os valores de retorno possíveis:

Valor de retorno

Descrição

24400

Válido

24401

Não válido, motivo desconhecido.

24402

Não válido porque o ponto {0} é um ponto isolado que não é válido nesse tipo de objeto.

24403

Não válido porque algum par de bordas de polígono se sobrepõe.

24404

Não válido porque o anel de polígono {0} apresenta interseção consigo mesmo ou com outro anel.

24405

Não válido porque um anel de polígono apresenta interseção consigo mesmo ou com outro anel.

24406

Não válido porque a curva {0} se degenera em um ponto.

24407

Não válido porque o anel de polígono {0} se recolhe a uma linha no ponto {1}.

24408

Não válido porque o anel de polígono {0} não é fechado.

24409

Não válido porque alguma parte do anel de polígono {0} está no interior de um polígono.

24410

Não válido porque o anel {0} é o primeiro anel em um polígono do qual não é o anel exterior.

24411

Não válido porque o anel {0} está fora do anel exterior {1} de seu polígono.

24412

Não válido porque o interior de um polígono com anéis {0} e {1} não está conectado.

24413

Não válido devido a duas bordas sobrepostas em curva {0}.

24414

Não válido porque uma borda de curva {0} se sobrepõe a uma borda de curva {1}.

24415

Não válido porque algum polígono tem uma estrutura de anel inválida.

24416

Não válido porque na curva {0} a borda que inicia no ponto {1} é uma linha ou um arco degenerado com pontos de extremidade opostos.

Exemplos

O exemplo a seguir de um objeto espacial inválido ilustra como os métodos IsValidDetailed () se comportam.

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.

Consulte também

Outros recursos

Métodos estendidos em instâncias geometry