Работа с архивным классом напрямую

Архивный класс создается и обслуживается в базе геоданных, когда для набора данных или класса объектов разрешается архивирование. Вы не сможете увидеть архивные классы в окнах просмотра данных, но вы можете добавить их в ArcMap для их просмотра и организации к ним запросов.

Чтобы добавить архивный класс в ArcMap, вы должны сначала выделить слой или таблицу, для которой было разрешено архивирование, в таблице содержания. Тогда кнопка Добавить архив (Add Historical Archive) на панели инструментов История базы данных (Geodatabase History) станет активной.

Панель инструментов История (History)

Щелкните на этой кнопке, чтобы добавить архивный класс на карту. Архивный класс будет отображать каждое изменение, которое было произведено с момента разрешения архивирования. Архивный класс не может быть изменен: он используется исключительно в целях анализа.

Добавление архивного класса на карту позволит вам работать с архивом напрямую. Вы также сможете задать для этого слоя условные знаки, чтобы сделать ваш анализ эффективнее. Например, при использовании поля GDB_FROM_DATE в качестве поля значения для ваших условных знаков вы могли бы раскрасить объекты в этом слое на основании момента времени, когда они были обновлены.

Существует два типа запросов, результаты выполнения которых смогут ответить на большинство вопросов, адресованных к истории класса:

Запросы к определенному моменту времени используются для организации запроса к определенному времени. Это позволит вам работать с данными в исторической версии и подключаться к состоянию данных нужного вам момента времени. Такие запросы смогут помочь вам при попытке определить, как данные или определенный район выглядели в определенный момент времени.

Запросы к периоду времени работают с данными на промежутке времени между двумя моментами времени, начальным и конечным. Данные запросы позволяют вам просматривать, как объект или некоторая местность изменялись с течением времени. Просматривая временные диапазоны, вы можете отслеживать, как объект обновлялся за время его существования. Это покажет, как изменялись данные, и позволит вам видеть и сравнивать изменения объекта.

Любой запрос к конкретному моменту времени или временному диапазону может быть создан в конструкторе определяющих запросов ArcMap.

Если вам необходимо увидеть определенный объект в заданное время, то используйте его object ID и введите соответствующую дату и время.

Ниже приведем пример запроса к моменту времени:

OBJECTID = 23 AND GDB_FROM_DATE <= '2005-10-12 14:11:20' and GDB_TO_DATE > '2005-10-12 14:11:20'

Важно заметить, что синтаксис полей GDB_FROM_DATE и GDB_TO_DATE может отличаться в зависимости от того, как база данных хранит даты. Вы легко можете проверить формат хранения дат, выбрав GDB_FROM_DATE или GDB_TO_DATE и щелкнув на кнопке Получить значения (Get Unique Values) в окне конструктора запросов.

Чтобы выполнить запрос к временному диапазону с помощью конструктора запросов, откройте диалоговое окно Конструктор запросов (Query Builder), щелкнув правой кнопкой мыши на архивном классе и выбрав из контекстного меню Свойства (Properties). Перейдите на вкладку Определяющий запрос (Definition Query) и затем щелкните на кнопке Конструктор запросов (Query Builder).

Конструктор запросов (Query Builder)

В архивном классе имеется два поля, которые могут помочь выполнить запрос к временным диапазонам: GDB_FROM_DATE и GDB_TO_DATE. Выберите одно из этих полей и щелкните на кнопке Получить значения (Get Unique Values), чтобы увидеть значения поля и синтаксис поля с типом даты. После этого вы сможете построить запросы, используя эти значения или вводя ваши собственные даты.

Например, если вы хотите увидеть, как географическая область изменялась между датами 1 мая 2003 и 1 июня 2005, то вы можете создать такой запрос:

GDB_FROM_DATE > '2003-05-01 12:00:00' AND GDB_FROM_DATE < '2005-06-01 12:00:00'

В результате вам будут возвращены все строки, которые были вставлены или обновлены в период между этими датами.

Вы сможете обнаружить все вставки, обновления или удаления, которые были произведены на этом временном отрезке. Разработчикам, которые заинтересованы в обнаружении этих типов изменений, следует обратиться к интерфейсу IVersionedTable, расположенном в пакете Software Developer Kit.

ПримечаниеПримечание:

Изменение архивного класса напрямую может привести к нарушению целостности архивных данных. При использовании ArcGIS к архивному классу имеется доступ типа «только для чтения».

Связанные темы

12/10/2012