sql >> Database >  >> RDS >> Sqlserver

'De opgegeven invoer vertegenwoordigt geen geldige geografie-instantie' uitzondering bij gebruik van SqlGeographyBuilder

Ik had dezelfde fout, maar het bleek een probleem met de oriëntatie van de polygoonring te zijn. Een simpele kwestie van het omdraaien van de volgorde van de coördinatenarrays loste het probleem op.

Ter illustratie, dit mislukt met de bovenstaande fout:

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

overwegende dat dit werkt:

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

Merk op dat ik de x,y-paren binnen een punt niet omdraai, ik draai de volgorde van de hele puntenreeks (bijv. {pt1, pt2, pt3, pt4, pt5} wordt {pt5, pt4, pt3, pt2, pt1 }



  1. Hoe kan ik kolomwaarden van één tabel bijwerken met kolomwaarden van een andere tabel?

  2. UPDATE-instructie:subquery opnieuw evalueren na elke SET

  3. Hang in Python-script met SQLAlchemy en multiprocessing

  4. gegevens die in het tekstgebied zijn ingevoerd, komen niet in de database die is ontworpen met php en mysqli