Come ottengo SRID dal campo Geometria


16

Qual è la funzione per ottenere SRID dal campo Geometria.

Ho inserito uno shapefile nella tabella di SQL Server con un campo Geometry definito. So che la proiezione di shapefile è Swreff99_1800 (EPSG: 3011).

Ora la mia domanda è: come ottengo questo SRID: 3011 usando qualche metodo OGC nel campo della geometria?


Non sono chiaro su ciò di cui hai bisogno. È necessaria la definizione di SRID 3011 da SQL Server? Sembra che tu abbia già inserito i dati con il set SRID corretto, sì?
Chad Cooper,

Risposte:


31

E 'questo quello che stai cercando?

select distinct SP_GEOMETRY.STSrid from dbo.MYTABLE

Questo ti darà una tabella con i diversi SRID usati nella tabella dbo.MYTABLE


Grazie!. La mia seconda domanda è SRID 3011 non definito nella tabella sys.spatial_reference_systems. E ho bisogno di trasformare la geometria da SRID 3011 a SRID 4326. Cosa devo fare allora?
user1899

1
Per quanto ne so, SQL Server 2008 non è in grado di trasformare i dati della geometria tra diversi sistemi di coordinate: vede tutti i dati della geometria archiviati in un sistema di coordinate matematiche.
Peter Horsbøll Møller,

4

Dopo aver provato quanto sopra senza fortuna, ho provato il metodo seguente:

select [geomColumnName].STSrid
from [schema].[tableName]

Ciò fornisce il valore SRID per tutti i record nella tabella. Suppongo che dal momento che tutti i record DOVREBBERO avere lo stesso SRID, che se volessi semplicemente ottenere il valore per un record, ti direbbe il SRID per l'intera tabella:

select top 1 [geomColumnName].STSrid
from [schema].[tableName]

Mi chiedo quale versione di MS SQL Server stai usando e se ci sono stati cambiamenti nelle versioni successive che renderebbero l'uso di Distinct non supportato? O è solo che il nome della tua colonna Geometry non è SP_GEOMETRY? Ho visto alcuni casi in cui la Geometria era memorizzata con SRID diversi anche se si riferivano a sistemi di coordinate simili.
Peter Horsbøll Møller,

1
@ PeterHorsbøllMøller guardando di nuovo questo, non ho visto che il suo uso di SP_GEOMETRY si riferiva al nome della colonna della geometria, quindi la mia risposta è quasi uguale a quella accettata ...
DPSSpatial

0

Credo che il numero che vorresti usare a questo punto sarebbe srid 4619 o srid 4977 è SQL Server.

Questi sono entrambi equivalenti a EPSG 3011.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.