Viac

Konvertujú OSGB východ a sever na geometriu za behu v SQL Server 2008 R2?

Konvertujú OSGB východ a sever na geometriu za behu v SQL Server 2008 R2?


Mám tabuľku v databáze, ktorá obsahuje východ a sever pre širokopásmové reléové stanice. Snažím sa vytvoriť zobrazenie v serveri SQL Server 2008 R2, ktoré môžem použiť v QGIS, a chcem vytvoriť pole geometrie za behu od východu a severu. Príkladom je Easting 257306 a northing 142708 (uložené v oddelených poliach) prevedené na POINT (257306 142708) ako geometriu.

Použil som nasledujúci kód:

geografia :: STGeomFromText ('POINT (' + CONVERT (varchar (20), Easting) + " + CONVERT (varchar (20), Northing) + ')', 27700) AS Geometry

ale zobrazí sa chyba, ktorá uvádza, že zadaný SRID sa musí zhodovať s jedným z podporovaných v sys.spatial_reference_systems a ja som sa pozrel a 27700 sa v tejto tabuľke nezobrazuje.

Ako to vytvorím v poli geometrie lietania v mojom zobrazení?


Ak sa vyjadríte ako a Geometria namiesto a Geografia bude to fungovať. Geografické objekty musia byť na guľatej Zemi a Spojené kráľovstvo je ploché :-)


V systéme SQL Server 2008 neexistuje žiadna projekcia z jedného súradnicového systému do druhého, čo je pravdepodobne to, čo ste očakávali, že sa stane automaticky, keď vložíte 27700 do funkcie STGeomFromText. EPSG: 27700 je British National Grid, čo je projektovaný súradnicový systém, tj. Je v metroch a v karteziánskej rovine. Geografický údajový typ, EPSG: 4326, je v stupňoch, preto je vášBOD (257306 142708)zlyhá, pretože spadá z rozsahu (-180,180), (-90,90).

Riešením, ako to @iant celkom zábavne vyjadril, je, že namiesto toho použije geometrický dátový typ, tj. Projektovaný, nie geografický. Nie však preto, že by Spojené kráľovstvo bolo ploché, ale preto, že 27700 je premietaný do lietadla pomocou elipsoidu (geoidu), ktorý zodpovedá tvaru Spojeného kráľovstva, pozrite sa na British National Grid, ak o tom skutočne chcete vedieť niečo viac.

geometria :: STGeomFromText ('POINT (' + CONVERT (varchar (20), Easting) + " + CONVERT (varchar (20), Northing) + ')', 27700) AS Geometry

SQL Server trvá na tom, aby existoval SRID, aj keď s ním v skutočnosti nemôžete robiť nič užitočné, ako napríklad prevádzať jeden súradnicový systém na druhý. Ak omylom zmiešate geometrie s rôznymi SRID, môže to byť skutočne mätúce, pretože jednoducho nedosiahnete žiadne výsledky (bez varovania, ale je to stranou).


Pozri si video: Upload GPS Coordinates to Google Earth Pro