I want to know, In which format the Geographic data stored in geometry data type of SQLServer 2008.it looks like a long string,like 0xE6100010466DFEOA4089663524....... for one polygon. My second question is How can i get set of google latitudes/longitudes from this data format ?
2 Answers
It's binary data, you need to use the STAsText() method to return it as a string that contains the lat/longs, as in:
SELECT [OBJECTID]
,[TRACT_ID]
,[TRACT_NAME]
,[SHAPE].STAsText()
FROM [City].[dbo].[TRACTS]
To go the other way, use the STAsBinary() method.
-
Fine! Thats what i needed. Can i go in reverse. I mean is it possible to convert set of lat/longs back to binary format?– user1899Feb 6, 2012 at 14:59
-
In which format [is] geographic data stored in
geometry
data type of SQL Server 2008. It looks like a long string, like0xE6100010466DFEOA4089663524…
for one polygon.
These values are essentially BLOBs (binary large objects): Values of the GEOMETRY
and GEOGRAPHY
types are encoded in a special binary format which is specified in "[MS-SSCLRT]: Microsoft SQL Server CLR Types Serialization Formats". (SQL Server 2008 only used version 1 of that format, version 2 was introduced with SQL Server 2012.)
How can I get set of Google latitudes/longitudes from this data format?
This has already been adressed by a previous answer: Call the .STAsText()
method on a GEOMETRY
-typed value to get a WKT representation of the geometry. Depending on the projection / coordinate system used by your geometries, this will make lat/long coordinate pairs visible in a plain text format.