sql >> Databasteknik >  >> RDS >> Sqlserver

"Den angivna inmatningen representerar inte en giltig geografiinstans"-undantag när du använder SqlGeographyBuilder

Jag hade samma fel, men det visade sig vara ett polygonringorienteringsproblem. En enkel fråga att vända ordningen på koordinatmatriserna löste problemet.

För att illustrera, detta misslyckas med ovanstående fel:

 select geography::STGeomFromText ('Polygon  ( (10 10, 10 20, 20 20, 20 10, 10 10))',4326)

medan detta fungerar:

 select geography::STGeomFromText ('Polygon  ( (10 10, 20 10, 20 20, 10 20, 10 10))',4326)

Observera att jag inte vänder x,y-paren inom en punkt, jag vänder ordningen för hela punktmatrisen (t.ex. {pt1, pt2, pt3, pt4, pt5} blir {pt5, pt4, pt3, pt2, pt1 }



  1. Java-databasabstraktion för GWT (eller:Är Hibernate ett bra val?)

  2. Använd OBJECT_NAME() för att hämta ett objekts namn från dess object_id i SQL Server

  3. PostgreSQL:mellan med datetime

  4. Vad är det rätta sättet att fylla i en DropDownList från en databas?