999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用SQL語句實現宗地快速編號

2016-12-18 14:12:22王志平
北京測繪 2016年2期
關鍵詞:排序數據庫

王志平

(上海瑞納信息技術有限公司,上海200433)

1 前言

為推進以土地為基礎的不動產統一登記工作,推動城鄉一體化地籍管理進程,逐步實現國土資源信息化、標準化,國土資源部印發了《全國宗地統一代碼編制工作實施方案》的通知(國土資發〔2012〕4號)。不僅最近幾年開展的集體土地所有權調查、村莊地籍調查要求以新的編碼規則進行宗地編號,老的城鎮地籍系統升級時,所有宗地也要按照新規則進行統一編號。面對數量巨大的宗地和界址點,如何快速高效的進行重新編號是一個值得研究的問題。

2 宗地統一編號原則

全國宗地統一編碼采用“地籍區和地籍子區”兩個級別的編碼分區概念,遵循宗地統一編碼的原則。地籍區、地籍子區的劃分有三種模式:一是按照現行鄉鎮、街道劃分;二是以現行鄉鎮街道為基礎,結合典型線狀地物劃分;三是完成按照典型線狀地物劃分。

《地籍調查規程》要求[1],在地籍子區范圍內,從西到東,從北到南,統一預編宗地號。宗地代碼采用五層19位層次碼結構,按層次分別表示縣級行政區劃、地籍區、地籍子區、土地所有權類型、宗地號。第一層次為縣級行政區劃,代碼為6位,采用《中華人民共和國行政區劃代碼》(GB/T 2260)。第二層次為地籍區,代碼為3位,用01~999表示。第三層次為地籍子區,代碼為3位,用01~999表示。第四層次為土地權屬類型,代碼為2位,其中第一位表示土地所有權類型,用G、J、Z表示,第二位表示宗地特征碼,用 A、B、S、X、C、W、Y表示。第五層次為宗地順序號,代碼為5位,宗地順序碼用00001~99999表示,在相應的宗地特征碼后順序編碼。

3 常見編號方法

過去,開展城鎮地籍調查,一般在調查階段采用人工的方式進行編號,系統地對宗地自動進行編號的研究較少。目前,常見的商品軟件一般采用帶狀法實現自動編號[2],用定位點位置代替宗地位置,并通過設定間距來劃分條帶,然后在條帶內依據橫坐標實現從左到右的排序。這種編號法清晰簡單,容易實現,但是對地塊形狀敏感性較差,會出現編號跳躍,但跳躍范圍不大,總體效果比較好。

改進的編號方法如改進錐形編號法、遞歸分解編號法[3],優先考慮了編號地塊的連續性,方向關系定位比較準確,解決了一些復雜形狀地塊的空間關系,編號更合理,但是涉及到地塊空間關系的判斷,不可避免的要進行復雜繁瑣的圖形運算,在處理大量地塊的編號時,其編號效率就難以令人滿意了。

對于城鎮地籍數據庫升級來說,宗地往往都以數萬或數十萬計,界址點以數十萬或數百萬級。以縣為單位開展的村莊地籍調查往往有數十萬個宗地和數百萬個界址點。面對海量地塊,如果在編號運算時要進行大量的空間關系的運算,編號效率是不能接受的。常規的帶狀編號法由于涉及到圖形運算,其編號效率仍然不夠理想,在處理大量宗地和界址點上常常需要花費很長時間。例如,我們使用某采用帶狀編號法的商品軟件對約10萬個宗地進行編號時,用時達數小時。

本文在遵循基本編號原則的基礎上,主要把重點放在提高編號效率上,在帶狀法編號思路的基礎上,將空間排序巧妙的轉換為利用SQL的排序查詢來實現,編號效率實現了數量級的提高。

4 算法設計

由于涉及到對圖形的讀寫,為了實現更快的讀取速度,我們將ArcSDEGeodatabase數據庫中的圖形數據全部導出為本地Personal Geodatabase數據庫,所有的處理和轉換直接針對本地數據庫操作[4]。圖形數據處理程序編寫全部在Arc Map環境中以VBA+Arc Objects的本地開發模式進行[5][6]。

宗地統一編號不僅涉及到圖形運算,還要修改圖形及調查表的宗地編號等屬性信息。通過分析,我們發現影響宗地編碼速度的主要瓶頸在宗地圖形的空間排序和宗地號賦值,因此,需要在這兩個方面進行突破才能實現編號速度的大幅提升。

為了實現宗地的快速空間排序,我們讀取地籍子區內每個宗地面要素的FeatureID值和中心點或者外界矩形左上角點的縱、橫坐標寫入本地數據庫臨時表中,并采用合適的間距對縱坐標進行分行,然后直接用Select語句對臨時表中的記錄進行行號倒序、橫坐標正序的查詢就可以實現宗地從上之下、從左到右的快速排序。

對宗地圖形要素的宗地號賦值,使用ADO連接本地數據庫,依據FeatureID值用Update語句逐個更新Personal Geodatabase中宗地層要素表記錄即可,試驗證明其比調用IFeature對象來修改宗地要素地籍號要快數十倍。

以“之”字形編號為例,核心算法主要包括以下三個步驟。

(1)第一步:遍歷地籍子區內的所有宗地,將宗地要素OID值、中心點坐標和所屬行號寫入臨時表Tempfor TB中。

Set p Query Filter=New Query Filter

p Query Filter.WhereClause= ″SSQY=″″&Trim(DjzqBh)

Set p FeatureCursor = p Featureclass.Search(p QueryFilter,False)

Set p Feature=pFeatureCursor.NextFeature

Do While Not p FeatureIs Nothing

Set p Area=p Feature.Shape

OID=p Feature.OID

X=p Area.Centroid.X

Hanghao=Int(p Area.Centroid.Y/30)‘行號,30為行距

sql= ″insert into Tempfor TB(OID,X,Hanghao)values(?&OID&?,? &X&?,?&Hanghao&?)″

Set rs=datacn.Execute(sql,1,adCmd T-ext)

Set rs=Nothing

Set pFeature=pFeatureCursor.NextFeature

Loop

(2)第二步:對臨時表Tempfor TB中的記錄根據行號倒序和橫坐標值正序進行SELECT查詢,實現對宗地從上到下、從左到右的編號方式。

sql=″SELECT OID,X,HanghaoFROM Tempfor TB order by Hanghaodesc,X″

rs.Opensql,datacn,adOpenForwardOnly,ad Lock ReadOnly

(3)第三步:根據查詢結果逐個更新宗地編號。

TBBH=1

'根據OID值對宗地逐個更新地籍號

Do While rs.EOF=False

sql2= ″update″&pZDFeatureclass.Alias Name&″set DJH=?&Trim(DjzqBh)&″GB″ &TBBH& ? where OBJECTID=″&rs!OID

Set rs2=datacn2.Execute(sql2,1,adCmd Text)

Set rs2=Nothing

rs.MoveNext

TBBH=TBBH+1

Loop

上述算法,稍加改動就可以實現“弓”字形順序流水編號。界址點、圖斑的編號規則和宗地類似,因此同樣可以采用上述算法實現快速統一編號。

5 結束語

由于盡量避免了圖形運算和讀寫,將編號中最耗時的空間排序和宗地號賦值過程都通過SQL語句操作本地數據庫來實現,故編號效率較高。在一臺較高配置的PC機上對約10萬個宗地全部進行重新統一編號用時不到3分鐘,對約54萬個界址點重新編號費時約11分鐘。雖然本算法不能做到像智能化編號方法那樣做到編號更加合理化,但是在遵循基本編號規則的前提下,在編號速度上做到了完勝,在批量處理大量宗地、圖斑的編號上具有一定的效率優勢。

猜你喜歡
排序數據庫
排排序
排序不等式
恐怖排序
節日排序
刻舟求劍
兒童繪本(2018年5期)2018-04-12 16:45:32
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 国产精品福利在线观看无码卡| 国产精品片在线观看手机版| 成人午夜视频在线| 亚洲第一国产综合| 午夜丁香婷婷| 久久精品国产精品一区二区| 青青操国产视频| 国产人免费人成免费视频| 国产一级在线观看www色| 亚洲日本韩在线观看| 色婷婷成人网| 欧美成a人片在线观看| 国产又大又粗又猛又爽的视频| 天堂在线亚洲| 久久综合亚洲色一区二区三区| 免费人成黄页在线观看国产| 日本a级免费| 国产一级裸网站| 国产 在线视频无码| 亚洲区欧美区| 又黄又湿又爽的视频| 天堂av综合网| 久久精品只有这里有| 特级欧美视频aaaaaa| 狠狠色狠狠综合久久| 国产精品v欧美| 免费在线成人网| 久久精品aⅴ无码中文字幕| 99视频有精品视频免费观看| 欧美日韩国产在线人成app| 久久精品无码专区免费| 91网红精品在线观看| 中文字幕在线不卡视频| 漂亮人妻被中出中文字幕久久| 国产爽爽视频| 在线观看国产黄色| 国产精品九九视频| 国产在线观看人成激情视频| 欧美性爱精品一区二区三区| 国产精品不卡永久免费| 香蕉久人久人青草青草| 午夜日韩久久影院| 狂欢视频在线观看不卡| 青草免费在线观看| 91成人精品视频| 精品伊人久久久香线蕉| 国产内射一区亚洲| 性做久久久久久久免费看| 免费jjzz在在线播放国产| 亚洲中文字幕久久无码精品A| 在线不卡免费视频| 制服丝袜在线视频香蕉| 亚洲欧美成人影院| 亚洲日韩高清无码| 国产屁屁影院| 成人综合久久综合| 色综合成人| 欧美不卡视频在线观看| 91啪在线| 日韩毛片在线视频| 日韩精品无码免费一区二区三区 | 国产精品亚洲专区一区| 欧美h在线观看| 久草视频福利在线观看| 不卡午夜视频| 伊人久久久大香线蕉综合直播| 狠狠色丁香婷婷| 欧洲欧美人成免费全部视频| 久久成人免费| 色偷偷综合网| 亚洲天堂啪啪| 精品成人免费自拍视频| 国产女主播一区| 国产欧美视频在线观看| 无码'专区第一页| 国产传媒一区二区三区四区五区| 亚洲一级毛片免费看| 免费Aⅴ片在线观看蜜芽Tⅴ | 成人亚洲视频| 男女男精品视频| 免费无码AV片在线观看中文| 久久国产精品77777|