黃冰倩,陸廷開,陳興亞
(貴州省林業(yè)調(diào)查規(guī)劃院,貴州 貴陽 550003)
基于ArcGIS和Access對空間數(shù)據(jù)庫的處理應(yīng)用
——以貴州省退耕還林還草摸底調(diào)查數(shù)據(jù)處理為例
黃冰倩,陸廷開,陳興亞
(貴州省林業(yè)調(diào)查規(guī)劃院,貴州 貴陽 550003)
為了統(tǒng)一規(guī)范貴州省退耕還林還草摸底調(diào)查數(shù)據(jù)庫,根據(jù)摸底調(diào)查工作細(xì)則,利用Arcgis10.0、Access2007軟件對退耕還林還草摸底調(diào)查空間數(shù)據(jù)庫進(jìn)行圖形拓?fù)浜瓦壿媽傩詸z查;對錯(cuò)誤數(shù)據(jù)進(jìn)行批量處理、修改操作內(nèi)容和步驟進(jìn)行了介紹。確保了退耕還林還草摸底調(diào)查數(shù)據(jù)庫矢量數(shù)據(jù)拓?fù)潢P(guān)系、圖形數(shù)據(jù)與屬性數(shù)據(jù)的關(guān)聯(lián)性、屬性因子完整性和正確性,提高了成果數(shù)據(jù)統(tǒng)計(jì)匯總效率。
退耕還林還草;Arcgis;Access;圖形拓?fù)?;邏輯屬?/p>
1.1拓?fù)錂z查
拓?fù)鋵W(xué)是研究空間實(shí)體的拓?fù)潢P(guān)系的科學(xué),主要涉及目標(biāo)與周圍其它對象“相連”、“相鄰”、“包含”等關(guān)系研究[1]。目前在ArcGIS平臺下,ESRI提供的數(shù)據(jù)存儲方式中,Coverage和Geo-Database((mdb,gdb,sde)能夠建立拓?fù)?,Shape格式的數(shù)據(jù)不能建立拓?fù)鋄2]。ArcGIS拓?fù)洌═opology)是在同一個(gè)要素集(FeatureDataset)下的要素(FeatureClass)之間的拓?fù)潢P(guān)系的集合。所以要參與一個(gè)拓?fù)涞乃幸仡?,必須在同一個(gè)要素集內(nèi)。一個(gè)要素集可以有多個(gè)拓?fù)?,但每個(gè)要素類最多只能參與一個(gè)拓?fù)?。ArcGIS拓?fù)溆赏負(fù)涿Q(Name),拓?fù)淙莶睿═olerance)、級別(Rank)、要素類(Featureclass)、拓?fù)湟?guī)則(Rule)組成。
在現(xiàn)實(shí)生活中,由于數(shù)據(jù)源的多樣性、數(shù)據(jù)生產(chǎn)、數(shù)據(jù)處理標(biāo)準(zhǔn)的不一致等原因都造成數(shù)據(jù)質(zhì)量無法滿足現(xiàn)實(shí)需求。那么就需要進(jìn)行數(shù)據(jù)檢查,拓?fù)錂z查無疑是最有效、最快捷、最簡便的一種數(shù)據(jù)圖形檢查方式。
1.2空間拓?fù)錂z查在退耕還林?jǐn)?shù)據(jù)處理中的應(yīng)用
本次退耕還林?jǐn)?shù)據(jù)庫空間拓?fù)錂z查主要是針對小班面進(jìn)行,因此主要用到的拓?fù)湟?guī)則是面拓?fù)湟?guī)則。下面簡單舉例說明在處理退耕還林?jǐn)?shù)據(jù)中用到的拓?fù)湟?guī)則:
1.2.1規(guī)則一
Must not overlap,同一多邊形要素類中多邊形之間不能重疊(同一層之間的拓?fù)潢P(guān)系,不涉及到其它圖層)。例如,本次退耕還林?jǐn)?shù)據(jù)要求上交小班面圖層中各小班之間不能重疊[3](圖1)。
圖1 小班面重疊拓?fù)錂z查規(guī)則
1.2.2規(guī)則二
Must cover each other,兩個(gè)要素類中的多邊形要相互覆蓋,外邊界要一致(層與層之間的拓?fù)潢P(guān)系)。例如:本次退耕還林?jǐn)?shù)據(jù)要求上交小班面應(yīng)該和配發(fā)小班面小班邊界一致,可以對小班進(jìn)行分割,但是不能進(jìn)行修邊處理(圖2)。
圖2 小班面邊界一致拓?fù)錂z查規(guī)則
縣級退耕還林還草摸底數(shù)據(jù)都是以mdb格式提交,Access支持mdb格式數(shù)據(jù),且在數(shù)據(jù)字段設(shè)計(jì),別名修改以及批量字段復(fù)制等操作簡便易行。利用Access強(qiáng)大的DDE(動態(tài)數(shù)據(jù)交換)和OLE(對象的聯(lián)接和嵌入)特性,可以在一個(gè)數(shù)據(jù)表中嵌入位圖、Excel表格、Word文檔,還可以建立動態(tài)的數(shù)據(jù)庫報(bào)表和窗體等。
2.1Access的查詢介紹(以Access2007為例)
Microsoft Office Access是由微軟發(fā)布的關(guān)系數(shù)據(jù)庫管理系統(tǒng)。Access有強(qiáng)大的數(shù)據(jù)處理、統(tǒng)計(jì)分析能力,在統(tǒng)計(jì)分析上萬、十幾萬條記錄及以上的數(shù)據(jù)時(shí)速度快且操作方便。查詢是向數(shù)據(jù)庫提出的關(guān)于表中所包含數(shù)據(jù)的問題[4]。查詢的數(shù)據(jù)源可以是一個(gè)或多個(gè)數(shù)據(jù)表或已存在的查詢。查詢產(chǎn)生的操作結(jié)果形式上看類似于數(shù)據(jù)表,實(shí)際上是一個(gè)動態(tài)的數(shù)據(jù)集合,每次打開查詢,都會顯示數(shù)據(jù)源的最新變化情況。
2.1.1Access查詢對象的基本類型
查詢對象有5類:選擇查詢、交叉表查詢、操作查詢、參數(shù)查詢、SQL查詢。其中操作查詢又包括4種:生成表查詢、更新查詢、追加查詢、刪除查詢。操作查詢需要用“運(yùn)行”命令使查詢生效。
2.1.2查詢的設(shè)計(jì)視圖
常用的查詢視圖有3種:設(shè)計(jì)視圖、數(shù)據(jù)表視圖、SQL視圖。查詢的設(shè)計(jì)視圖窗口分上下兩部分,上半部分是“字段列表”區(qū),放置查詢的數(shù)據(jù)源。下半部分是“設(shè)計(jì)網(wǎng)格”區(qū),放置在查詢中顯示的字段和在查詢中做條件的字段(圖3)。
圖3 查詢設(shè)計(jì)視圖
2.1.3常用運(yùn)算符
算術(shù)運(yùn)算符:+、-、*、/,乘、除同級,加、減同級,同級運(yùn)算從左到右,乘、除運(yùn)算優(yōu)先運(yùn)算優(yōu)先于加、減運(yùn)算。
關(guān)系運(yùn)算符:>、>=、<、<=、<>、==,Access系統(tǒng)用true或-1表示“真”,用false或0表示“假”。
邏輯運(yùn)算符:not、and、or,運(yùn)算結(jié)果是邏輯值。
特殊運(yùn)算符:like,可進(jìn)行模糊查詢。例如:like“李*”;in,指定一個(gè)值列表作為查詢匹配條件。例如:in((“水田”,“旱地”,“水澆地”);between,指定數(shù)據(jù)范圍,用and連接起始數(shù)據(jù)和終止數(shù)據(jù)。如:between 10 and 30,相當(dāng)于:>=10 and<=30;is null,查找為空的數(shù)據(jù);is not null,查找非空的數(shù)據(jù)。
2.2Access的查詢統(tǒng)計(jì)在退耕還林?jǐn)?shù)據(jù)處理應(yīng)用
2.2.1小班細(xì)班面邏輯屬性檢查
退耕還林?jǐn)?shù)據(jù)邏輯屬性檢查要求必填字段屬性填記完全且正確。例如對小班細(xì)班面邏輯檢查中xzdlbm((現(xiàn)狀地類編碼)、zysj((作業(yè)設(shè)計(jì))、jbnt((基本農(nóng)田)、sjly((數(shù)據(jù)來源)等字段為必須填記字段,且要求填記在代碼范圍之內(nèi);zyzjzc((是否享受中央資金支持)不為必填字段,若填代碼需填記在范圍之內(nèi)。用Access對小班細(xì)班面進(jìn)行邏輯檢查,可在設(shè)計(jì)視圖下半部分是“設(shè)計(jì)網(wǎng)格”區(qū),在查詢字段中設(shè)置相應(yīng)的查詢條件(圖4),即可實(shí)現(xiàn)該項(xiàng)小班屬性的邏輯檢查。
圖4 小班面邏輯屬性檢查設(shè)計(jì)視圖
2.2.2農(nóng)戶表與小班面的匹配查詢
退耕還林摸底調(diào)查中耕地小班面(現(xiàn)狀地類為旱地和農(nóng)林混作)需填寫涉及農(nóng)戶基本情況表,數(shù)據(jù)庫要求農(nóng)戶表與耕地小班匹配對應(yīng)。在Access中運(yùn)用SQL語句對兩者進(jìn)行匹配檢查,可快速高效得出農(nóng)戶表中不匹配的記錄和屬性字段。
(1)篩選出耕地小班面。SELECT小班細(xì)班面.地籍號x,小班細(xì)班面.xzdlbm
FROM小班細(xì)班面
WHERE(小班細(xì)班面.xzdlbm)In((“013”,“014”));
(2)利用SQL語句對農(nóng)戶表與耕地小班面進(jìn)行匹配查詢。SELECT涉及農(nóng)戶基本情況表.id,涉及農(nóng)戶基本情況表.xian,涉及農(nóng)戶基本情況表.xian_name,涉及農(nóng)戶基本情況表.xiang,涉及農(nóng)戶基本情況表.xiang_name,涉及農(nóng)戶基本情況表.QSDWDM,涉及農(nóng)戶基本情況表.qsdwmc,涉及農(nóng)戶基本情況表.tbbh,涉及農(nóng)戶基本情況表.xbh,涉及農(nóng)戶基本情況表.hzxm,涉及農(nóng)戶基本情況表.jtrk,涉及農(nóng)戶基本情況表.xygdmj,涉及農(nóng)戶基本情況表. stmj,涉及農(nóng)戶基本情況表.lscl,涉及農(nóng)戶基本情況表.sftg,涉及農(nóng)戶基本情況表.gjtgmj,涉及農(nóng)戶基本情況表.tgdlscl,涉及農(nóng)戶基本情況表.sqlx,涉及農(nóng)戶基本情況表.yysslz,涉及農(nóng)戶基本情況表. sqsz,涉及農(nóng)戶基本情況表.sffcgh,涉及農(nóng)戶基本情況表.地籍號x,涉及農(nóng)戶基本情況表.bz
FROM涉及農(nóng)戶基本情況表LEFT JOIN小班細(xì)班面ON涉及農(nóng)戶基本情況表.地籍號x=小班細(xì)班面.地籍號x
WHERE((小班細(xì)班面.地籍號x)Is Null))Or(涉及農(nóng)戶基本情況表.xian)<>小班細(xì)班面.XIAN))Or((涉及農(nóng)戶基本情況表.xian_name)<>小班細(xì)班面.XIAN_NAME))Or((涉及農(nóng)戶基本情況表.xiang)<>小班細(xì)班面.XIANG))Or((涉及農(nóng)戶基本情況表.xiang_name)<>小班細(xì)班面.XIANG_NAME))Or((涉及農(nóng)戶基本情況表.QSDWDM)<>小班細(xì)班面.QSDWDM))Or((涉及農(nóng)戶基本情況表.qsdwmc)<>小班細(xì)班面.QSDWMC))
數(shù)據(jù)是GIS的核心,GIS數(shù)據(jù)質(zhì)量對于GIS系統(tǒng)的統(tǒng)計(jì)查詢、空間分析都具有重要的意義。圖形拓?fù)錂z查保證空間數(shù)據(jù)質(zhì)量、提高空間查詢統(tǒng)計(jì)分析的正確性和效率,使地理數(shù)據(jù)庫能夠更真實(shí)地反映地理要素。Access有強(qiáng)大的數(shù)據(jù)處理、統(tǒng)計(jì)分析能力,可以靈活設(shè)置統(tǒng)計(jì)條件,方便地進(jìn)行各類匯總,在貴州省退耕還林還草摸底調(diào)查數(shù)據(jù)屬性質(zhì)量檢查工作中起到了很大的作用,提高了操作效率。因此,在大型數(shù)據(jù)匯交過程中充分結(jié)合應(yīng)用ArcGIS的拓?fù)錂z查功能和Access的屬性檢查功能可以高效地完成數(shù)據(jù)檢查工作。
[1]高紅鑄,趙旭安,蘇效樂.拓?fù)鋵W(xué)[M].北京:北京師范大學(xué)出版社,2010.
[2]趙宇娟.淺談geodatabase數(shù)據(jù)模型中的拓?fù)潢P(guān)系[J].甘肅科技,2008,(21).
[3]李金標(biāo),童小華,周德意.土地房產(chǎn)gis的拓?fù)錂z查與數(shù)據(jù)預(yù)處理[J].三晉測繪,2003,(1).
[4]【美】邁克爾(Michael R)等著;謝俊,崔子南,張波譯. Access2007寶典[M].北京:人民郵電出版社,2008.
[5]徐照興.access數(shù)據(jù)庫查詢技術(shù)探討[J].吉林省教育學(xué)院學(xué)報(bào),2014,(9).
P208.2
A
1002-3356(2015)02-0078-02
2014-12-10