Compartilhar via


MinDbCompatibilityLevel (tipo de dados de geografia)

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

Retorna a compatibilidade mínima de banco de dados que reconhece o tipo de dados geography.

Sintaxe

  
. MinDbCompatibilityLevel ( )  

Tipos de retorno

Tipo de retorno do SQL Server: int

Tipo de retorno do CLR: int

Comentários

Use MinDbCompatibilityLevel() para testar a compatibilidade de um objeto espacial antes de alterar o nível de compatibilidade em um banco de dados. Um tipo de geografia inválido retorna 110.

Exemplos

a. Testando a compatibilidade do tipo CircularString com o nível 110 de compatibilidade

O exemplo a seguir testa a compatibilidade de uma instância de CircularString com uma versão anterior do SQL Server:

DECLARE @g geometry = 'CIRCULARSTRING(-120.533 46.566, -118.283 46.1, -122.3 47.45)';  
IF @g.MinDbCompatibilityLevel() <= 110  
BEGIN  
    SELECT @g.ToString();  
END  

B. Testando a compatibilidade do tipo LineString com o nível 100 de compatibilidade

O seguinte exemplo testa a compatibilidade de uma instância de LineString com o SQL Server 2008 (10.0.x):

DECLARE @g geometry = 'LINESTRING(-120.533 46.566, -118.283 46.1, -122.3 47.45)';  
IF @g.MinDbCompatibilityLevel() <= 100  
BEGIN  
    SELECT @g.ToString();  
END  

C. Testando a compatibilidade do valor de uma instância de Geografia

O exemplo a seguir mostra os níveis de compatibilidade de duas instâncias geography. Um é menor do que um hemisfério e o outro é maior do que um hemisfério:

DECLARE @g geography = geography::Parse('POLYGON((0 -10, 120 -10, 240 -10, 0 -10))');  
DECLARE @h geography = geography::Parse('POLYGON((0 10, 120 10, 240 10, 0 10))');  
IF (@g.EnvelopeAngle() >= 90)  
BEGIN  
SELECT @g.MinDbCompatibilityLevel();  
END     
IF (@h.EnvelopeAngle() < 90)  
BEGIN  
SELECT @h.MinDbCompatibilityLevel();  
END  

A primeira instrução SELECT retorna 110 e a segunda instrução SELECT retorna 100.

Consulte Também

Nível de compatibilidade de ALTER DATABASE (Transact-SQL)
Compatibilidade com versões anteriores do Mecanismo de Banco de Dados do SQL Server