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所示:



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