同步复制使用系列一 Check In/Out
2010-12-23 09:38
197 查看
同步复制使用系列一
Check In/Out
同步复制是ArcGIS桌面一个很重要的功能,他可以实现库与库之间的在线或者离线同步,同步复制包括三种方式,签入签出方式、One Way、Two Way。三种方式应用与不同的业务场景,我们就以Step By Step的方式给大家介绍怎么使用每种方式的同步复制,以及每一个Step的功能作用。签入签出(Check Out/In)
签入签出的使用在我们平常的业务中使用非常广泛,试想有一个中心数据库,用户在外边进行数据的编辑更新,可以利用该方式事先导出Check Out文件数据库(PGDB、FGBD、也可以是ArcSDE数据库),用户可以在文件数据库文件进行编辑更新,然后在将该数据Check In进去,以保持总数据库的同步更新。数据库要求
数据源必须为ArcSDE GDB的数据库,既可以注册版本也可以非注册版本(ArcGIS10新特性),GDB里面既可以是Simple Model也可以是Full Model(ArcGIS10新特性)
![](http://hi.csdn.net/attachment/201012/23/0_1293068258CzIh.gif)
嵌入签出只介绍两个工具(需要将ArcSDE数据加载到ArcMap才能高亮):
![](http://hi.csdn.net/attachment/201012/23/0_1293068258IXH4.gif)
:创建复本
![](http://hi.csdn.net/attachment/201012/23/0_12930682592r2v.gif)
:同步变化
数据同步
加载数据后,我们可以看到表结构和数据,该数据集为注册版本数据。
![](http://hi.csdn.net/attachment/201012/23/0_1293068267qM61.gif)
![](http://hi.csdn.net/attachment/201012/23/0_1293068268O5AK.gif)
我们可以将数据库的所有数据导出,也可以事先将某一区域(用户可以利用查询条件,高亮选中数据导出),也就是我们是支持范围选择的。本例就导出高亮选中的那个图形。然后点击创建复本按钮。
![](http://hi.csdn.net/attachment/201012/23/0_129306827044E7.gif)
其实在注册版本数据Check Out时,利用的是版本的机制,创建了一个版本(复本),本例就是创建了一个MyCheckOut_2版本。勾选进一步可以得到更详细的选择信息。
![](http://hi.csdn.net/attachment/201012/23/0_1293068272F3Wu.gif)
![](http://hi.csdn.net/attachment/201012/23/0_1293068273zIIO.gif)
Simple Model:简单的点线面
Full Model:带有拓扑、几何网络等复杂数据类型
![](http://hi.csdn.net/attachment/201012/23/0_12930682753Epx.gif)
![](http://hi.csdn.net/attachment/201012/23/0_1293068276C85Z.gif)
点击完成后我们可以看到,生成的一个文件GDB是属性是:this geodatabase contains single generation replica,说明该数据可以进行修改签入,而且签入之后,就不能再次进行签入了。签入之后状态会发生变化为:this is not a replica geodatabase。
![](http://hi.csdn.net/attachment/201012/23/0_129306827791UD.gif)
然后我们对Check Out的数据进行编辑修改:新增两个,然后分割一个,删除半个
![](http://hi.csdn.net/attachment/201012/23/0_1293068278l1c4.gif)
然后选择同步复制按钮,选择同步的版本,同步的数据文件
![](http://hi.csdn.net/attachment/201012/23/0_1293068280x8o1.gif)
![](http://hi.csdn.net/attachment/201012/23/0_1293068281USP6.gif)
上面的选择我们在版本的使用看起来比较熟悉,这更说明了同步复制也使用了版本的原理。
在数据Check In进去后我们并没有立即看到数据发生了变化,这是因为我们现在使用的是版本数据,我们Check Out时建立了一个MycheckOut_2版本,所以我们切换版本,然后浏览该版本即可看到更新后的数据。
![](http://hi.csdn.net/attachment/201012/23/0_1293068282nN6V.gif)
![](http://hi.csdn.net/attachment/201012/23/0_1293068283Vs8c.gif)
![](http://hi.csdn.net/attachment/201012/23/0_12930682843R5b.gif)
从上面我们可以看到将变化的数据已经同步到我们的总数据库中了,但是它是一个子版本,我们需要将该子版本的数据协调提交到Default版本。
在ArcGIS10版本可以对非注册版本进行签入签出,那么就不存在版本的概念了,也就是说我们的数据直接同步到Default版本了。
在将数据Check In后,我们在看该数据状态已经不是一个复本的GDB了。
![](http://hi.csdn.net/attachment/201012/23/0_1293068286iQNT.gif)
Register Existinig data Only
那么可能有用户希望,我已经Check In了数据了,我能不能继续使用该数据进行修改后进行同步呢,回答当然是可以的。我们可以利用Check Out的 Register Existinig data Only的功能,将已经Check In的数据与数据库重新建立一个同步关系。
![](http://hi.csdn.net/attachment/201012/23/0_1293068288d7b4.gif)
![](http://hi.csdn.net/attachment/201012/23/0_12930682902hY2.gif)
Schema同步
同样我们也可以进行数据结构(Schema)的同步,选择创建复本
![](http://hi.csdn.net/attachment/201012/23/0_1293068291s3S4.gif)
我们可以看到复本并没有数据只有Schema,我们添加字段ccc
![](http://hi.csdn.net/attachment/201012/23/0_1293068293QiLb.gif)
我们需要进入ArcCatalog选择比较Schema功能
![](http://hi.csdn.net/attachment/201012/23/0_1293068294WPei.gif)
我们首先选择修改过的文件数据库,然后选择复本的名字,保存一个XML地址
![](http://hi.csdn.net/attachment/201012/23/0_129306829661Gg.gif)
![](http://hi.csdn.net/attachment/201012/23/0_1293068299n6sN.gif)
![](http://hi.csdn.net/attachment/201012/23/0_1293068310nwwE.gif)
![](http://hi.csdn.net/attachment/201012/23/0_1293068312BO1w.gif)
![](http://hi.csdn.net/attachment/201012/23/0_12930683176NGO.gif)
以下为有效的Schema变化
![](http://hi.csdn.net/attachment/201012/23/0_1293068319VX65.gif)
相关文章推荐
- 同步复制CheckIn/CheckOut的再研究-Checkout文件Geodatabase
- 同步复制使用系列二-OneWay
- 同步复制CheckIn/CheckOut的再研究-Checkout文件Geodatabase
- 同步复制使用系列三-TwoWay
- 同步复制CheckIn/CheckOut的再研究-Checkout ArcSDE Geodatabase
- 同步复制CheckIn/CheckOut的再研究-Checkout文件Geodatabase
- 同步复制CheckIn/CheckOut的再研究-Checkout ArcSDE Geodatabase
- 在STM32上如果不使用外部晶振,OSC_IN和OSC_OUT的接法
- percona-toolkit系列之复制类工具使用
- SharePoint Designer Check In and Check Out Error – Cannot perform this operation.The file is no longer check out or has been del
- inout端口使用方法
- procedure in out的使用
- 17.3.3 Using Replication for Scale-Out 使用复制扩展
- 深入浅出多线程系列之十三:使用Wait和Pulse 来模拟一些同步构造
- 使用VS进行工作流开发系列博客2-Developing Workflows in VS: Part 1 - Workflow Objects and A Crash Course on Mechanics
- Red Gate系列之四 SQL Data Compare 10.2.0.885 Edition 数据比较同步工具 完全破解+使用教程
- Lync Server 2013功能部署系列之八 配置、使用Lync VDI 2013 Plug-In实现在VDI环境
- Hibernate操作MySQL使用reserved word引发错误: “You have an error in your SQL syntax; check the manual that co
- 【mysql】mysql存储过程in、out、inout参数使用
- 线程系列07,使用lock语句块或Interlocked类型方法保证自增变量的数据同步