ArcGIS版本編輯流程

1、 概述
基於ArcSDE的數據庫的最大好處是支持多用戶的同時訪問和編輯等。版本化是允許多用戶同時進行數據編輯的重要手段。
版本是整個地理數據庫在某個時刻的快照,其中包含地理數據庫中的所有數據集。版本不僅僅備份地理數據庫。相反,版本及其內部進行的事務可通過系統表進行追蹤。這樣可隔離用戶在多個編輯會話中的工作,使得用戶進行編輯時不必鎖定生產版本中的要素或直接影響到其他用戶,且無需備份數據。利用版本化,多個用戶可對ArcSDE地理數據庫中的同一數據進行編輯,而無需應用鎖或複製數據。

2、 版本編輯
在ArcGIS中版本編輯的一般流程主要包括以下幾步:連接SDE數據庫,註冊數據爲版本,開始編輯數據,協調版本,提交數據。下面是這個過程的詳細說明。

2.1 連接SDE數據庫
要對存儲在基於SDE的數據庫中的數據進行版本編輯,首先需要連接到SDE數據庫。在ArcGIS中即可以在ArcCatalog中也可以在ArcMap的Catalog窗口中的Database Connection節點下進行數據庫的連接。雙擊Database Connection節點後,出現如圖1所示的空間數據庫連接對話框: (空間數據庫鏈接界面)

空間數據庫的連接有通過SDE服務鏈接和直接連接兩種方式,對於不同數據庫(Oracle、DB2等),連接對話框中的參數填寫方式請參見ArcGIS Desktop Help專業庫中數據管理\使
用ArcCatalog\連接到地理數據庫\連接到ArcSDE地理數據庫主題中的內容。

2.2 註冊數據爲版本
連接到SDE數據庫後將SDE中的數據添加到ArcMap中進行版本編輯之前,必須對要編輯的數據或數據集註冊爲版本,註冊爲版本的過程如下:在Catalog窗口中右鍵要編輯的數據或數據集,在彈出的快捷菜單中選擇註冊版本命令,如圖2所示:

  
如果不選中“註冊所選對象並將編輯內容移動到基表”複選框,對所有版本進行的編輯(包括 DEFAULT)將保留在註冊過程中創建的增量表中。
由於將數據註冊爲版本後,數據不能再執行這些操作:
 創建拓撲。 
 添加或從拓撲中移除要素類。  
     添加或移除拓撲規則。
     修改拓撲容差或等級。  
     創建幾何網絡。
     向幾何網絡添加要素類或從中刪除要素類。

       如果需要對數據執行以上一些操作,可以將已註冊爲版本的數據取消註冊版本,取消註冊版本的命令需要通過:單擊自定義>自定義模式,單擊自定義對話框的命令選項卡,單擊“類別”列表中的地理數據庫工具,將取消註冊版本命令從“命令”列表拖動到“標準”工具欄中的方式添加到界面中。需要注意的是,取消註冊後會刪除數據庫中相應的A表和D表,相應的在數據庫中所作的編輯也將消失,如果要保留這些編輯內容,請協調數據到每個版本。

2.3 編輯數據
數據註冊爲版本後,將數據添加到ArcMap中就可以像編輯其他非版本數據一樣進行版本化數據了。需要注意的是,如果要對數據源進行編輯,需要對數據進行非版本化編輯。執行非版本話編輯後,編輯操作不能撤銷或恢復。在ArcMap中,默認情況下對ArcSDE中的數據執行的編輯操作是版本化編輯,如果要對數據執行非版本化編輯,需要在ArcMap中對編輯會話進行配置,具體配置過程如下:
1、在編輯工具欄的編輯器下拉菜單中,選擇選項命令,如圖4所示:
2、 在打開的編輯選項對話框中,選擇版本管理選項卡,如圖5所示:

3、取消選中“在編輯數據庫版本並且可以執行撤銷和恢復操作”複選框,確定後,開始編輯會話,編輯過程就爲非版本化編輯。


2.4 版本協調
由於版本編輯允許多個用戶同時對數據庫進行編輯,可能的情況有以下兩種:1、同一個版本同時被多個用戶編輯;2、多個用戶對不同版本進行編輯。執行完版本編輯後,可能希望將更改內容合併到該版本的任意父版本,要合併更改,必須先協調版本,解決衝突。衝突發生的情況:
1、對於多個用戶同時編輯的同一個版本的情況。如果多個用戶同時對某個要素的同一屬性進行了更新,當一個用戶保存編輯後,另外的用戶在保存編輯內容時候將會出現衝突;如果一個用戶刪除了某個要素並保存了該操作,另外的用戶對該要素進行了更新當更新的用戶保存編輯內容的時候會出現衝突;在ArcGIS中,多個用戶同時編輯同一個版本的協調時ArcGIS自動執行的,可以在ArcMap的編輯選項中設置協調過程中的一些操作,過程如下:
A:在編輯器下拉菜單中選擇選項命令,將彈出如圖6所示的編輯選項對話框:

       在這裏可以設置衝突的定義方式(按行,按列);以及發生衝突時的解決辦法(使用數據庫,使用編輯會話),使用編輯會話方式會覆蓋其他用戶進行的編輯;另外還可以定義是否查看衝突列表,選擇自動保存(使用定義的衝突解決方式)將不顯示衝突列表,自動保存編輯內容,此外還可以不自動保存和不存在衝突時自動保存都需要手動保存編輯內容,選擇者兩項的時候如果出現衝突,還會顯示衝突列表,在衝突列表中尼可以手動進行衝突解決。圖7顯示了衝突列表:
在衝突列表中不同的級別上右鍵單擊可以分別在字段級別、行級別、類級別和根級別上解決解決衝突,衝突的解決方式有如圖8所示的幾種方式:

2、對於多個用戶編輯不同版本的情況下,發生衝突的情況和多個用戶編輯同一個版本的發生衝突的情況一致。不過過個用戶編輯不同版本的衝突的檢測需要進行協調才能發現,進行檢測的過程如下:
A:在ArcMap中右鍵工具欄處的空白處,調出版本管理工具欄,如下圖9所示:

B:點擊工具欄上的協調工具,出現如圖10協調對話框:

在對話框中,選擇要協調的目標版本(必須是當前版本的父版本及以上版本),設置衝突的定義方式和衝突的默認解決方式。確定後,如果存在衝突也會出現圖7所示的衝突列表,衝突的解決方式也和多個用戶同時編輯同一個版本一致。
2.5 提交更改
執行完版本協調和衝突解決以後,可以將數據更改合併到某個版本中,合併的過程既是,版本提交,版本提交的過程如下: 1、調出版本管理工具條;
2、在版本管理工具條上點擊提交版本工具,如圖11所示:



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章