友情提示,您閱讀本篇博文的先決條件如下:
1、本文樣本基於Microsoft SQL Server 2008 R2調測。
2、具備 Transact-SQL 編程經驗和使用 SQL Server Management Studio 的經驗。
3、熟悉或瞭解Microsoft SQL Server 2008中的空間資料類型。
4、具備相應比如OGC規範、KML規範)的GIS專業理論知識。
5、瞭解MapInfo地圖資料、ArcGIS Shp地圖資料格式。
6、瞭解SQL空間工具SqlSpatialTools)。
首先分析個案例:如果產品要實現在Silverlight開發的Map應用中將省份、地市和區縣標記出來的功能,通過分析只能擷取到省份、地市和區縣的空間資料,然後在Map應用中動態繪製圖層疊加在Map的圖層上。自己繪製圖層疊加最關鍵的一點就是要擷取到省份、地市和區縣的空間資料,從已有的地圖資料中匯出這份資料乃明智之舉。本篇結合筆者的經曆,介紹一種快速提取MapInfo地圖資料檔案中的空間資料的方案,供大家參考。
650) this.width=650;" border="0" alt="" src="http://www.bkjia.com/uploads/allimg/131228/140K5JZ-0.jpg" width="953" height="416" />
一、準備環境
1、安裝MapInfo Professional 8.0/8.5,本文基於MapInfo Professional 8.0軟體平台。
2、下載SQL空間工具SqlSpatialTools)。
3、安裝Microsoft SQL Server 2008 R2。
二、使用MapInfo Professional轉換地圖資料格式
MapInfo Professional提供了地圖資料格式轉換工具,通過菜單“tools->universal Tanslator->universal Tanslator” 便可開啟地圖格式轉換面板,如:
650) this.width=650;" border="0" alt="" src="http://www.bkjia.com/uploads/allimg/131228/140K54M4-1.jpg" width="623" height="510" />
通過以上步驟轉換.tab的地圖資料為.shp格式的地圖資料,同時得到的檔案有.shp、.shx、.dbf和.prj四種副檔名的檔案,具體有什麼作用這裡就不介紹了,主要使用的是.shp,其他檔案都是輔助的資料檔案。
三、匯入Shpfile地圖空間資料到SQL Server 2008
這裡不做詳細介紹,不清楚如何匯入資料的請移步《使用空間工具(Spatial Tools)匯入ESRI格式地圖資料》。
四、SQL Server Management Studio中預覽空間資料
SQL Server Management Studio 支援兩種方式查看空間資料,既表記錄方式和空間結果方式,為兩種方式的。
650) this.width=650;" border="0" alt="" src="http://www.bkjia.com/uploads/allimg/131228/140K5HG-2.jpg" width="992" height="374" />
五、通過空間查詢到處空間查詢結果
在SSMS中通過查詢空間資料表,使用SQL內建函數可以將空間資料轉換為圖形座標點集合。如:
650) this.width=650;" border="0" alt="" src="http://www.bkjia.com/uploads/allimg/131228/140K5CL-3.jpg" width="590" height="370" />
上面的操作提取出了座標點集合,可以直接將查詢結果另存新檔txt檔案,直接就可以複製使用裡面的地理座標資料了。
六、相關資料
[1]、SQL Server 2008空間資料應用系列九:使用空間工具(Spatial Tools)匯入ESRI格式地圖資料
[2]、空間工具Spatial Tools): http://www.sharpgis.net/page/SQL-Server-2008-Spatial-Tools.aspx
本文出自 “beniao” 部落格,請務必保留此出處http://beniao.blog.51cto.com/389148/640468