程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL2008空間數據類型--歐氏幾何1基礎

SQL2008空間數據類型--歐氏幾何1基礎

編輯:關於SqlServer

在SQL2008中增加了對地理空間數據類型的支持,該類型分為2種:歐氏(平面)幾何geometry 和地理 空間(橢圓體)幾何geography 。歐式幾何大家基本上都學過,是以坐標來表示,而地理空間就是使用經 度和緯度來表示,由於平面幾何比較簡單(我記得好像是初中時候學的平面解析幾何,高中學立體解析幾 何),所以我就從簡單的學起,先學習geometry 數據類型。

在平面幾何中我們有3個基本元素:點、線、面。對應的在geometry 數據類型中也是這3種類型Point 、LineString、Polygon以及各自的集合MultiPoint、MultiLineString、MultiPolygon 另外還有一個它 們的混合的集合GeometryCollection,混合集合中可以包含多個Point多個LineString和多個Polygon。很 容易看出MultiPoint、MultiLineString、MultiPolygon是GeometryCollection的一種特殊情況。官方給 出的它們的關系如圖:

當需要申明一個geometry 對象時需要使用它提供的一個函數STGeomFromText將字符串形式的申明轉換 為對象。例如要申明一個Point,坐標為1,2 對應的SQL語句就是:

DECLARE @g geometry;
SET @g = geometry::STGeomFromText('POINT (1 2)', 0);
SELECT @g.ToString();

這裡Point除了接受x y這2個參數外,還可以接受Z(仰角elevation)和 M(度量measure)值,在平 面幾何中好像沒有這個概念啊?不知道是拿來做什麼用的,估計是在地理數據類型中才會使用吧。

除字符串之外,STGeomFromText還有一個參數就是SRID。SRID是空間引用標識符的簡稱,主要用於地 理數據類型,在平面幾何數據類型中SRID默認是0,關於SRID的具體作用在地理數據類型的時候再研究, 只需要知道,不同SRID的2個實例是不能進行運算的,運算的結果都是NULL。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved