Ejemplo:
CREATE TABLE #ZONES( [ID] [int] IDENTITY(1,1) NOT NULL, [POLYGON] [geography] NOT NULL CONSTRAINT [PK_ZONES] PRIMARY KEY CLUSTERED ([ID] ASC)) --Falla INSERT INTO #ZONES([POLYGON])VALUES(geography::STPolyFromText('POLYGON((-9.123 43.123, -8.123 43.123, -8.123 42.123, -9.123 42.123,-9.123 43.123))' ,4326)) --Funciona INSERT INTO #ZONES([POLYGON])VALUES(geography::STPolyFromText('POLYGON((-9.123 43.123, -9.123 42.123, -8.123 42.123, -8.123 43.123,-9.123 43.123))' ,4326))Solución para evitar cambiar a mano el orden de las coordenadas:
DECLARE @geom GEOMETRY = 'POLYGON((-9.123 43.123, -8.123 43.123, -8.123 42.123, -9.123 42.123,-9.123 43.123))'; DECLARE @geog GEOGRAPHY = @geom.MakeValid().STUnion(@geom.STStartPoint()).STAsText() INSERT INTO #ZONES([POLYGON])VALUES(@geog)
0 comentarios:
Publicar un comentario