日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
SQLServer2008空間數(shù)據(jù)應(yīng)用系列五:數(shù)據(jù)表中使用空間數(shù)據(jù)類(lèi)型

前面幾篇文章介紹了關(guān)于SQL Server 2008中空間數(shù)據(jù)類(lèi)型相關(guān)的知識(shí)點(diǎn),了解到了什么是空間數(shù)據(jù),什么是空間數(shù)據(jù)類(lèi)型,如何在SQL中變成定義基礎(chǔ)的空間對(duì)象實(shí)例。這篇文章將繼續(xù)介紹SQL Server 2008中空間數(shù)據(jù)類(lèi)型的應(yīng)用知識(shí)點(diǎn),主要介紹如何在數(shù)據(jù)表中使用空間數(shù)據(jù)類(lèi)型列,如何存儲(chǔ)空間數(shù)據(jù)到空間數(shù)據(jù)類(lèi)型,以及如何查詢(xún)、預(yù)覽空間數(shù)據(jù)等相關(guān)知識(shí)點(diǎn)。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶(hù)創(chuàng)新互聯(lián)還提供了陽(yáng)原免費(fèi)建站歡迎大家使用!

  選擇使用空間數(shù)據(jù)類(lèi)型,意味著必須在SQL數(shù)據(jù)表中添加空間數(shù)據(jù)類(lèi)型列以存儲(chǔ)空間數(shù)據(jù)。通常有兩種情況:

  1、創(chuàng)建一張帶有空間數(shù)據(jù)類(lèi)型的新表。

  2、向已有數(shù)據(jù)表中添加空間數(shù)據(jù)類(lèi)型列字段。

一、創(chuàng)建空間數(shù)據(jù)類(lèi)型新表

  創(chuàng)建一個(gè)帶有空間數(shù)據(jù)類(lèi)型的新表和創(chuàng)建普通的表基本沒(méi)有區(qū)別,唯一的不同就是使用了空間數(shù)據(jù)類(lèi)型字段。以下SQL演示了創(chuàng)建帶有空間數(shù)據(jù)類(lèi)型的數(shù)據(jù)表:

 
 
 
 
  1. CREATE TABLE [Cities] (
  2.     [ID] [int] IDENTITY(1,1) NOT NULL,
  3.     [CityName] [varchar](255) NOT NULL,
  4.     [CityLocation] [geometry] NOT NULL
  5. )
  6. GO

二、添加空間數(shù)據(jù)類(lèi)型到已有表

  向已有表中添加空間數(shù)據(jù)類(lèi)型列和普通表添加新的列是一樣的,同樣使用alter table xxx add yyy datatype命令完成。下面代碼演示了向剛創(chuàng)建的新表添加一空間數(shù)據(jù)類(lèi)型字段:

 
 
 
 
  1. --向已有表中添加空間數(shù)據(jù)類(lèi)型字段
  2. ALTER TABLE [Cities]
  3.     ADD geo geography
  4. GO

三、為空間數(shù)據(jù)類(lèi)型列制定空間引用標(biāo)識(shí)(SRID

  任何空間數(shù)據(jù)類(lèi)型字段都可以向其指派相應(yīng)的空間引用標(biāo)識(shí)(SRID),部分空間數(shù)據(jù)類(lèi)型字段還是必須制定SRID的。實(shí)現(xiàn)對(duì)空間數(shù)據(jù)類(lèi)型列指派SRID也非常簡(jiǎn)單,SQL提供了指派命令來(lái)完成,下面的SQL命令演示了給上面新添加的空間數(shù)據(jù)類(lèi)型指派SRID的實(shí)現(xiàn)。

 
 
 
 
  1. --指派空間數(shù)據(jù)類(lèi)型列的SRID
  2. ALTER TABLE [Cities] 
  3.     ADD CONSTRAINT [enforce_srid_geographycolumn] 
  4.     CHECK (geo.STSrid = 4326)
  5. GO

四、插入空間數(shù)據(jù)到空間數(shù)據(jù)類(lèi)型字段

  插入數(shù)據(jù)導(dǎo)表格中同樣使用“insert into table.....”語(yǔ)法實(shí)現(xiàn),不同的是插入空間數(shù)據(jù)的時(shí)候需要對(duì)數(shù)據(jù)進(jìn)行格式化處理才能被成功的插入到空間數(shù)據(jù)類(lèi)型列。針對(duì)于兩種(geography和geometry)空間數(shù)據(jù)類(lèi)型,系統(tǒng)提供了專(zhuān)門(mén)的空間格式化語(yǔ)法來(lái)處理,比如通過(guò)將WKT文本插入到空間數(shù)據(jù)列,可以使用geometry::STGeomFromText()或者geography::STGeomFromText()函數(shù)來(lái)對(duì)WKT文本進(jìn)行空間數(shù)據(jù)類(lèi)型格式轉(zhuǎn)化。

 
 
 
 
  1. insert into Cities 
  2.     (CityName,CityLocation) 
  3.         values 
  4.             ('chongqing',geometry::STGeomFromText('POLYGON ((107.04352 28.870554, 107.043891 28.873231......)',4326));

  注:上面SQL代碼塊實(shí)現(xiàn)了將重慶市區(qū)區(qū)域WKT格式的空間數(shù)據(jù)插入到Cities表的CityLocation字段中,由于WKT內(nèi)用太長(zhǎng),代碼段中對(duì)其進(jìn)行了截取。

四、查詢(xún)空間數(shù)據(jù)類(lèi)型數(shù)據(jù)

  查詢(xún)空間數(shù)據(jù)和普通的數(shù)據(jù)查詢(xún)幾乎沒(méi)有區(qū)別,同樣使用“select xxx from table where x=y”的方式實(shí)現(xiàn)數(shù)據(jù)查詢(xún)。下面SQL命令演示了查詢(xún)剛剛插入的數(shù)據(jù)記錄:

 
 
 
 
  1. select * from Cities;
      

  同樣可以使用系統(tǒng)函數(shù)將查詢(xún)出的空間結(jié)果轉(zhuǎn)化為WKT文本格式輸出,下面的SQL命令詳細(xì)演示了改功能函數(shù)的使用:

 
 
 
 
  1. --轉(zhuǎn)換空間數(shù)據(jù)為WKT文本
  2. DECLARE @chongqing geometry;
  3. select @chongqing = CityLocation from Cities where ID=1;
  4. select @chongqing as 重慶市;
  5. select @chongqing.ToString() as 重慶市;
  6. select @chongqing.STAsText() as 重慶市;   --WKT
 

五、相關(guān)資料

  [1]、空間數(shù)據(jù)庫(kù)(百度百科):http://baike.baidu.com/view/1194566.htm

  [2]、使用空間數(shù)據(jù)實(shí)現(xiàn)位置智能:http://tech.ddvip.com/2008-04/120816526343873.html

  [3]、基礎(chǔ)空間對(duì)象(MSDN):http://msdn.microsoft.com/de-de/library/bb964711.aspx

  [4]、幾何實(shí)例上的OGC方法:http://msdn.microsoft.com/zh-cn/visualc/bb933960.aspx

  [5]、幾何圖形實(shí)例上的擴(kuò)展方法:http://msdn.microsoft.com/zh-cn/library/bb933880.aspx

  [6]、OGC 靜態(tài)幾何圖形方法:http://msdn.microsoft.com/zh-cn/library/bb933894.aspx

  [7]、擴(kuò)展靜態(tài)幾何圖形方法:http://msdn.microsoft.com/zh-cn/library/bb933805.aspx


網(wǎng)站名稱(chēng):SQLServer2008空間數(shù)據(jù)應(yīng)用系列五:數(shù)據(jù)表中使用空間數(shù)據(jù)類(lèi)型
地址分享:http://www.5511xx.com/article/dhggpgo.html