空间数据库学习笔记(四):空间引用标识符(SRID)

(一)基础知识

(1)每个空间实例都有一个空间引用标识符 (SRID)

(2)SRID 对应于基于特定椭圆体的空间引用系统,可用于平面球体映射或圆球映射

(3)从两个空间数据实例派生的任何空间方法的结果仅在这两个实例具有相同的 SRID(该 SRID 基于相同的用于确定实例坐标的度量单位、数据和投影)时才有效。

(4)SRID 最常见的度量单位为米或平方米。

(二)几何图形(geometry数据类型

(1)几何图形(geometry)实例默认 SRID 为零

(2)若要在 geometry 数据类型方法的计算中指明未定义的平面空间,SQL Server 数据库引擎 使用 SRID 0。

(三)地域实例必须使用支持的 SRID

 (1)SRID 必须与 sys.spatial_reference_systems 目录视图中显示的 SRID 中的一个匹配

--查询sys.spatial_reference_systems 目录视图
select * from sys.spatial_reference_systems

 (2)在使用 geography 数据类型对空间数据执行计算时,结果将取决于在创建数据时使用的是哪个椭圆体,因为为每个椭圆体都分配了一个特定空间引用标识符 (SRID)。

(3)对 geography 实例使用方法时,SQL Server 使用等于 4326 的默认 SRID,它将映射到 WGS 84 空间引用系统。如果要使用 WGS 84(或 SRID 4326)之外的某个空间引用系统中的数据,您需要确定地域空间数据的特定 SRID。

(4)明白上面的几条我们就知道了,在创建geometry和geography图形时为什么后面要跟0或者4326了

下面是几条语句:


--geometery实例
DECLARE @b geometry;
DECLARE @h geometry;
SET @b = geometry::STGeomFromText('LINESTRING(0 2, 2 0, 4 2)', 0);
SET @h = geometry::STGeomFromText('POINT(5 5)', 0);
SELECT @b.STRelate(@h, 'FF*FF****');
--geograph实例
DECLARE @g geography;
SET @g = geography::STPointFromText('POINT(-122.34900 47.65100)', 4326);
SELECT @g.ToString();
参考链接:空间引用标识符 (SRID)
posted @ 2011-06-22 14:06  焦涛  阅读(8209)  评论(0编辑  收藏  举报