使用SQL查询ArcGIS子版本的数据

刚才接到用户的询问,是否可以使用SQL语句查询出ArcGIS某个子版本的数据。

答案是肯定的,可以使用ArcSDE的多版本视图来完成。

首先我们需要在ArcGIS桌面上某个数据创建一个子版本,我们以图层aa为例,一个Default版本,一个mvedits版本,我们分别在两个版本进行相关编辑,来区分两者的要素不同。

如下图:Default版本数据

使用SQL查询ArcGIS子版本的数据_第1张图片

如下图:mvedits版本数据

使用SQL查询ArcGIS子版本的数据_第2张图片

查看步骤

1:创建多版本视图

C:/Users/gis>sdetable -o create_mv_view -T mvview1 -t aa -i esri_sdeora -u test -p test ArcSDE 10.0 for Oracle11g Build 775 Fri Sep 17 11:45:27 2010 Attribute Administration Utility ----------------------------------------------------- Successfully created MV view mvview1 for table aa. 

2:查看default版本的数据

C:/Users/gis>sqlplus test/test@orcl SQL*Plus: Release 11.1.0.6.0 - Production on 星期四 5月 5 10:20:05 2011 Copyright (c) 1982, 2007, Oracle. All rights reserved. 连接到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select objectid from mvview1; OBJECTID ---------- 2 67 2241 2242 2882 3841 3842 已选择7行。 

3:将目标版本设置为子版本

SQL> exec sde.version_util.set_current_version('mvedits'); PL/SQL 过程已成功完成。 

4:查看mvedits子版本数据

 SQL> select objectid from mvview1; OBJECTID ---------- 2 67 2241 2242 2882 4161 已选择6行。 

你可能感兴趣的:(sql,application,database,oracle11g,64bit,testing)