REVISIÓN: Tipos de datos de almacenamiento de información espacial geometría polígono con anillos internos devuelvan datos incorrectos a través de distintas operaciones geométricas

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 2216497
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Síntomas
En Microsoft SQL Server 2008 o Microsoft SQL Server 2008 R2, cuando intenta realizar una operación de geometría en un polígono que tiene un anillo interior, la operación devuelve un resultado inesperado.

Por ejemplo, ejecutar la secuencia de comandos siguiente:
declare @g1 geometry = 'GEOMETRYCOLLECTION(POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0), (2 2, 8 2, 8 8, 2 8, 2 2)))'declare @g2 geometry = 'GEOMETRYCOLLECTION(POLYGON ((2 2, 8 2, 8 8, 2 8, 2 2)))'select @g1.STIntersection(@g2).ToString() 
Al ejecutar esta secuencia de comandos, el método STIntersection devuelve el valor siguiente:
LINESTRING (2 DE 2, 2 DE 8, 8 8, 2 8, 2 DE 2)
En su lugar, el método devuelve un valor incorrecto:
POLÍGONO ((2 DE 2, 2 DE 8, 8 8, 2 8, 2))
Causa
Este problema se produce porque no reconoce el segundo anillo del polígono en el primer GeometryCollection SQL Server 2008 o SQL Server 2008 R2. Este problema se produce sólo cuando se utilizan determinadas instancias de SqlGeometry de tipo GeometryCollections que tienen ciertas orientaciones del anillo. El problema no ocurre cuando se utiliza el tipo de datos de SqlGeography.
Solución

Información del Service pack de SQL Server 2008

Para resolver este problema, obtenga el service pack más reciente para SQL Server 2008. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
968382 Cómo obtener el service pack más reciente para SQL Server 2008

Información del Service pack para SQL Server 2008 R2

Para resolver este problema, obtenga el service pack más reciente para SQL Server 2008 R2. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2527041Cómo obtener el service pack más reciente para SQL Server 2008 R2
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Se refiere a:".

Este problema se corrigió primero en SQL Server 2008 Service Pack 2 de SQL Server 2008.
Este problema se corrigió primero en SQL Server 2008 R2 Service Pack 1 para SQL Server 2008 R2.
Referencias
Para obtener más información sobre cómo trabajar con tipos de datos de geometría, visite la página Web de Microsoft TechNet siguiente:
Polígonos de geometría espacial de almacenamiento de información de SQL2008 KatmaiPCU2

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 2216497 - Última revisión: 12/12/2015 09:14:04 - Revisión: 3.0

Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Standard

  • kbnosurvey kbarchive kbprb kbsurveynew kbpubtypekc kbcode kbmt KB2216497 KbMtes
Comentarios