使用历史版本
要检查存档信息,必须通过历史版本访问数据。连接到历史版本时,也意味着连接到特定的时刻。该时刻可以为数据库的当前时间(DEFAULT 历史标记)、预定义的历史标记,或是指定的数据库日期和时间。
这是什么日期和时间?
使用存档信息时,重要的是要了解记录在存档类的 gdb_from_date 和 gdb_to_date 字段中的日期和时间反映了事务发生时的日期和时间 - 添加要素、编辑要素或从要素类移除要素时的日期和时间。此日期和时间从服务器 OS 接收。这会影响您访问和查询存档类的方式。
如果您在服务器以外的时区工作,则基于某个时刻的查询必须反映服务器的时间,而不是客户端 OS 的时间。例如,如果在 9:05 a.m. (PST) 执行了编辑,但 DBMS 位于纽约,则为此编辑记录的事务处理时间实际上是 12:05 p.m. (EST)。随后,如果要查询 9:05 a.m. 的历史版本,您将看不到该编辑,因为在服务器上 9:05 a.m. 时该要素尚未创建。要查看这个新添加的要素,需要在 DBMS 上查询 12:05 p.m. 的历史版本。
如果指定的日期和时间在启用存档之前,则将无法访问任何数据。只有在启用存档之后,才能访问存档数据。例如,如果启用存档的日期为 2010 年 2 月 1 日,然后切换到日期为 2010 年 1 月 31 日的历史版本,将不会显示任何数据。
刷新数据库时间按钮可在大多数允许对历史版本进行定义的对话框中找到。单击此按钮可使用当前数据库时间更新日期控制。这可确保客户端和数据库服务器之间的日期和时间保持一致。
DEFAULT 历史标记
连接到 DEFAULT 历史标记会显示存档类的当前表示,这等同于事务 DEFAULT 版本中的类制图表达。
通过 DEFAULT 历史标记的连接可以是只读连接,这种连接所消耗的数据库资源实际上比使用同等的版本化类要少。存档类不依赖于在增量表或 ArcSDE 知识库版本化表中存储的信息,这意味着对当前处于活动状态(gdb_to_date 为 9999 年 12 月 31 日)的所有记录的存档类进行查询通常比查询 DEFAULT 事务版本要快。
连接到不同的历史版本
要连接到由 DEFAULT 历史标记表示的日期和时间之外的日期和时间,可定义一个历史标记(用于快速连接到重要日期和时间的特定时刻),然后选择连接到该历史标记,或是输入一个日期和时间。请参阅历史标记相关主题,以了解创建历史标记的方式和时间。
可使用两种不同方法在 ArcGIS for Desktop 中连接到历史版本:使用地理数据库连接属性 或切换版本 对话框。
从“地理数据库连接属性”对话框连接到历史版本
地理数据库连接属性 对话框允许指定要与其进行连接的地理数据库版本。要打开该对话框,右键单击 ArcCatalog 或 ArcMap 的目录树中的数据库连接,并单击地理数据库连接属性。
首先,选择历史版本。然后可以选择是要从历史标记列表中挑选,还是从特定日期和时间中挑选。
如上所述,可以单击刷新数据库时间按钮,以使用当前数据库时间填充特定日期和时间字段。或者,也可以使用下拉日历在其中选择日期,或是直接在字段中输入日期和时间。
切换版本后,在 ArcCatalog 中预览的此连接文件的数据或在 ArcMap 中查看的数据就是从中可访问引用已选时刻的历史版本的、已启用存档的数据。
从“切换版本”对话框连接到历史版本
要打开切换版本 对话框,请执行以下操作之一:
- 右键单击 ArcMap 内容列表中的数据库,并单击更改版本。
- 单击 ArcMap 的版本管理 工具条上的切换版本按钮 。
对话框打开之后,单击底部的历史选项卡。
可从历史标记列表中进行选择,或者选择或输入特定的日期和时间。
在连接到不同的历史版本之后,ArcMap 就将显示所选时刻对应的历史版本参照数据。