日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型

發布時間:2025/4/16 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文:SQL Server 2008空間數據應用系列三:SQL Server 2008空間數據類型

  友情提示,您閱讀本篇博文的先決條件如下:

  1、本文示例基于Microsoft SQL Server 2008 R2調測。

  2、具備 Transact-SQL 編程經驗和使用 SQL Server Management Studio 的經驗。

  3、熟悉或了解Microsoft SQL Server 2008中的空間數據類型。

  4、具備相應的GIS專業理論知識。

  5、其他相關知識。


?

?  SQL Server 2008為大地測量空間數據提供了geography數據類型,為平面空間數據提供了geometry數據類型。這兩個都是Microsoft .NET Framework通用語言運行時(CLR)類型,并且可以用來存儲不同種類的地理元素,例如點、線和多邊形。這兩個數據類型都提供了你可以用來執行空間操作的屬性和方法,例如計算位置間的距離和找出兩者間交叉的地理特性(例如一條河流經一個城鎮)。本篇以SQL Server 2008的數據類型為核心內容,介紹其數據類型的支持以及新的空間數據類型的相關特性及基本應用。?

?        

?

一、SQL Server 2008通用數據類型

  在SQL Server 2008中的每個變量,參數都會被定義為一個特定的數據類型,這些特定的數據類型主要用于排序、存儲等,在SQL Server 2008中的通用數據類型和SQL Server 2005一樣,主要的幾個通用數據類型為下表所示:

   通用數據類型
數據類型描述
char固定長度字符串
datetime日期時間類型字段
float單精度字段
int整型字段
money貨幣類型
nvarchar可變長字符型

?

二、SQL Server 2008空間數據類型

?  SQL Server 2008中出了兼容低版本的SQL數據庫的通用數據類型和其他基礎數據類型(比如:real、text等類型),新推出了兩個用于支持空間數據存儲的空間數據類型,分別為:大地向量空間類型(geography)和幾何平面向量空間類型(geometry)。

?

  1、geography數據類型

  官方定義:geography數據類型為空間數據提供了一個由經度和緯度聯合定義的存儲結構。使用這種數據的典型用法包括定義道路、建筑、或者地理特性如可以覆蓋到一個光柵圖上的向量數據,它考慮了地球的彎曲性,或者計算真實的圓弧距離和空中傳播軌道,而這些在一個平面模型中所存在的固有失真引起的錯誤程度是不可接受的。

?

  2、geometry數據類型

  官方定義:geometry數據類型為空間數據提供了一個存儲結構,它是由任意平面上的坐標定義的。這種數據通常是用在區域匹配系統中的,例如由美國政府制定的州平面系統,或者是不需要考慮地球彎曲性的地圖和內層布置圖。geometry 數據類型提供了與開放地理空間聯盟(OGC)Simple Features Specification for SQL標準結合的屬性和方法,使得你可以對geometry數據執行操作以產生行業標準的行為。

?      

?

  雖然這兩個數據類型都可以用于存儲空間數據,在針對不同的空間數據的時候還是有所異同。如果我們需要自己基于SQL Server 2008來做空間數據定義,就需要根據不同的數據在這兩種空間數據類型中作出正確的決策了,這點在以后的博文中會進行介紹,這里飄過。此兩種空間類型是完美符合空間參照系統標準制定的,包括測距計量單位、空間引用索引、授權標準以及WKT等規范,如下SQL可查看對于空間數據類型所對于的空間引用索引標準中制定的地理空間測距計量單位:

SELECT
??unit_of_measure
FROM
??sys.spatial_reference_systems
WHERE
??authority_name?
=?'EPSG'
??
AND
??authorized_spatial_reference_id?
=?4326
------------------------------------------------------------
執行結果:metre

?

?三、空間數據的存儲方式

?  SQL Server 2008中的兩種空間數據:大地向量空間類型(geography)和幾何平面向量空間類型(geometry)都是可變長度的數據類型,這意味著它們相對于比如int或者datetime等固定長度的數據類型,其存儲的數據占用空間根據所存儲數據的復雜程度、數據描述文字等不同可自適應數據類型的長度變化。

?

  空間數據類型字段的數據存儲以8個字節的二進制格式存儲,每條記錄的數據的頭部分就被定義好了空間數據的類型(點、線、面等類型),以及所使用的空間參考系統和地理坐標(經度、緯度)等值。通常情況下二進制數據內容越長所占用的空間數據存儲空間就越大。

?

四、空間數據可視化

  在 SQL Server 2008 中Microsoft 引入具有兩個新的內置數據類型、 幾何圖形和地理空間數據支持。 盡管您可能 “ 看到 ” 數據空間列的二進制數據存儲但還是不能直觀的反應出空間數據的預覽效果,?SQL Server 2008 的SQL Server Management Studio 中提供了一個空間結果選項卡,專門用于可視化預覽空間數據結果。

?

  比如當前執行查詢重慶大區邊界的空間數據,那么對應于重慶大區邊界數據庫表可以執行以下SQL:

SELECT?[ID]
??????,
[CODE]
??????,
[ELEV]
??????,
[NAME]
??????,
[geom]
??
FROM?[BingMapsDB].[dbo].[CQ_Area_region]

?

  得到相應的SQL查詢記錄結果和空間可視化結果為下圖所示:

      

  ?

五、參考資料

  [1]、空間數據(百度百科):http://baike.baidu.com/view/125911.htm

  [2]、空間數據可視化:http://msdn.microsoft.com/zh-cn/magazine/ee335706.aspx

?

?

版權說明

? 本文屬原創文章,歡迎轉載且注明文章出處,其版權歸作者和博客園共有。為了保存作者的創作熱情,請在轉載后的明顯位置標記本文出處。??

? 作??????者:Beniao

?文章出處:http://beniao.cnblogs.com/? 或? http://www.cnblogs.com/

總結

以上是生活随笔為你收集整理的SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。