Używam nowej kolumny geograficznej w SQL Server 2008 i funkcji STGeomFromText. Oto mój kod (działa z AdventureWorks2008)Kolumna Geometria: STGeomFromText i SRID (co to jest SRID?)
DECLARE @region geography;
set @region = geography::STGeomFromText('POLYGON((
-80.0 50.0, -90.0 50.0,
-90.0 25.0, -80.0 25.0,
-80.0 50.0))', 4326);
SELECT @region;
Moje pytanie dotyczy 4326 w kodzie. Ma to być przestrzenny identyfikator referencyjny. Kiedy idę do MSDN, nie ma na nim zbyt wiele. Jeśli zmienię wartość na 56, pojawia się błąd informujący, że wartość musi znajdować się w tabeli sys.spatial_reference_systems.
Możesz zajrzeć na tej tabeli, wykonując:
select * from sys.spatial_reference_systems
Jest kolumna well_known_text w tej tabeli, ale nie mów mi dużo. Wartość dla 4326 to:
GEOGCS["WGS 84", DATUM["World Geodetic System 1984", ELLIPSOID["WGS 84", 6378137, 298.257223563]], PRIMEM["Greenwich", 0], UNIT["Degree", 0.0174532925199433]]
Czy ktoś może mi wyjaśnić tę tajemnicę? Co to jest SRID?
Nie zgadzam się z twoim stwierdzeniem: "Właściwie zamierzasz używać tylko 4326, chyba że masz konkretny powód". Za każdym razem, gdy masz do czynienia z danymi na niewielkim obszarze (państwo myślowe lub hrabstwo, w przeciwieństwie do świata), użyjesz lokalnego, przewidywanego układu współrzędnych. Systemy te zostały zaprojektowane w celu lepszego odwzorowania powierzchni Ziemi na płaszczyźnie 2D, w przeciwieństwie do globusa 3D. Najczęściej kończy się uzyskiwanie danych w projekcji innej niż WGS84, a będziesz musiał dokonać konwersji. Jeśli masz do czynienia tylko z punktami GPS, masz rację zakładając, że dane są w 4326 99% przypadków. – Roy