版本是SDE数据库中管理数据的一种机制,主要解决长事务问题。下面使用图例对该机制进行说明:
Default版本是SDE数据库默认的版本,假如我们在这里建立了子版本1,子版本2,子版本3,它们拥有Default版本上的所有数据,但是它们三个版本之间互相不拥有对方的数据。比如我现在子版本1中添加了一个面,子版本2中添加一个点,子版本3中添加了一条线,在没有进行冲突检查并把这些数据提交到父版本之前,Default版本,子版本2,子版本3中不会拥有子版本1中新添加的一个面。
建立版本入数据的一个好处是:
假如现在在向SDE数据库中写入一个图幅名称为DLG5364的数据,入库后发现入的数据不是最新的,或者说在入库的过程中由于网络突然中断而造成数据入库失败。如果是把数据入到了子版本1中的话,只用删除子版1,然后再新建一个版本1,再把重新把DLG5364图幅数据入库。否则,如果直接入到了 Default版本的话,需要删除SDE库里边的对应用户下面的所有数据,然后把所有删除的数据都重新入库。
等所有的数据入库完毕后,在ArcMap或版本管理系统中把所有的子版本都提交到Default版本,然后再删除这些版本,并对数据库进行压缩(该功能版本管理系统中提供了)。