Шаг 4: Редактирование с использованием классов отношений

 

Сейчас вы будете редактировать данные, которые включены в классы отношений базы геоданных. Ранее в этом курсе вы изучили, что классы отношений – это постоянные связи между таблицами в одной базе геоданных и что они дают доступ на чтение/запись к данным. Вы также изучили, что соединения и связи – это дополнительные способы для связывания таблиц, но они дают доступ к данным только на чтение и не являются частью базы геоданных. В базе геоданных Exercise7 есть несколько классов отношений, которые вы будете использовать, чтобы попрактиковаться в редактировании связанных с отношением записей в ArcMap.

 

 
Выключите слой R2Trails и включите слой R2Veg.

 

Вы начнете редактирование классов отношений, добавив новый полигон растительности.

 

 
Щелкните на инструменте Скетч (Sketch) и установите Целевой слой (Target) в R2VEG.

 

В этом классе пространственных объектов не должно быть пустот между полигонами, так что вам нужно убедиться, что полигон, который вы введете, будет смежным с другими.

 

 
Измените Задача (Task) на Автозавершение полигона (AutoCompletePolygon) (в разделе Задачи топологии (TopologyTasks)).

 

 
Приблизьтесь к области, показанной на следующем рисунке.

 

 

 

 
Еще немного приблизьтесь к области, показанной на следующем рисунке.

 

 

 
В меню Редактор (Editor) выберите Замыкание (Snapping), чтобы открыть окно Параметры замыкания (Snapping Environment).

 

 
Включите замыкание к ребру для слоя R2VEG.

 

 
Включите Показывать подсказки для замыкания (SnapTips). (Подсказка: Редактор > Опции > Общие (Editor > Options > General).)

 

 
Закройте окно Параметры замыкания (Snapping Environment).

 

 
Щелкните на инструменте Скетч (Sketch).

 

 
Оцифруйте новый полигон, замыкая на ребро существующего полигона, где-нибудь в отображаемой области.

 

 

Добавлен новый полигон, смежный с существующими, и он остался выбранным.

 

 
Откройте диалоговое окно Атрибуты (Attributes) и раскройте выбранный объект.

 

Примечание: Номер ID вашего объекта может отличаться от того, что на рисунке.

 

 

Заметьте, что нет знака плюс возле надписей класса отношений. Даже, если вы щелкните на классе отношений, справа не отобразятся никакие связанные записи. В этот момент нет связанных записей, только новый полигон, который вы только что добавили к слою R2VEG. Когда вы добавляете новые объекты к классу пространственных объектов, который участвует в классе отношений, вы должны вручную добавлять записи в связанные таблицы.

 

Помните, что классы отношений в базе геоданных Exercise7 все сложные и все типа один к одному, кроме ToSpec, которое один ко многим.

 
Щелкните правой кнопкой на надписи ToGISCalc и выберите Добавить новое (Add New). Должна появиться ошибка.

 

Вопрос 13: Как вы думаете, почему возникла ошибка и каково решение?

 

 
Закройте сообщение об ошибке.

 

Перед добавлением записей в отношение, в таблице источнике должен быть правильный первичный ключ. Далее вы обновите поле VEG_LINK сгенерированным значением так, что вы сможете добавить связанные записи.

 

 
Измените значение VEG_LINK нового полигона на 99999и нажмите Enter.

 

 
Попробуйте добавить новую запись в класс отношений ToGISCalc еще раз. На этот раз операция должна быть успешной.

 

 

 

Когда вы добавите новую запись, вы можете начать редактирование ее значений с помощью диалогового окна Атрибуты (Attributes) или таблицы. У вас также будет доступ к доменам кодированных значений и интервальным для новых записей.

 
Щелкните на новой записи в классе отношений ToGISCalc, чтобы просмотреть атрибуты справа. Заметьте, что каждое значение установлено в <Null>, кроме ObjectID и VEG_LINK, для которого установлено то же значение, которое вы ввели для нового полигона.

 

 
Обновите несколько атрибутов в соответствии со следующей таблицей.

 

Поле Значение

PARTITION_TYPE Watershed

PARTITION_ PASPXX

ENTERED_BY <введите ваше имя>

ENTERED_DATE <введите текущую дату>

ASPECT_CLASS South West

SLOPE_PERCENT 43

 

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

 

 
Закройте диалоговое окно Атрибуты (Attributes).

 

 
Пока ваш новый полигон остается выбранным, откройте таблицу для слоя R2VEG и просмотрите только выбранную запись.

 

 
Перейдите по описанию класса отношений ToPolyLocal.

 

Так как вы не добавляли никаких связанных записей в это отношение, то здесь не должно быть связанных (т.е. выбранных) записей в этой таблице. Вы можете создать новую связанную запись.

 

 
Прокрутите вниз таблицы.

 

 
В первой пустой строке для VEG_LINK наберите 99999.

 

ObjectID автоматически обновляется, так как он управляется программным обеспечением.

 

 
Закройте таблицу Атрибуты (Attributes of) R2VEG_POLY_LOCAL.

 

 
Перейдите к классу отношений ToPolyLocal еще раз.

 

На этот раз таблица R2VEG_POLY_LOCAL открывается с одной выбранной записью. Эта запись – та, что вы только что добавили.

 

 
Обновите несколько полей вашей новой записи, используя таблицу ниже как подсказку.

 

 

Поле Значение

 

CHANGE_COVER_TYPE Aspen

OLD_GROWTH No

OLD_GROWTH_SOURCE Walk Through

Когда вы обновите значение первичного ключа для нового объекта, вы можете обновлять связанные записи через диалоговое окно Атрибуты (Attributes) или через таблицу.

 

 
Сохраните ваши изменения.

 

Далее вы удалите полигон в слое R2VEG и посмотрите, как класс отношений управляет связанными записями. Сначала вы изучите кардинальность между полигоном и связанными записями видов растительности.

 

 
Закройте обе таблицы.

 

 
Используя любой удобный вам способ, выберите полигон DEVLXX 1086, который вы использовали ранее.

 

 
Откройте диалоговое окно Атрибуты (Attributes) и перейдите к классу отношений ToSpec.

 

 
Раскройте ToSpec, чтобы просмотреть связанные записи.

 

 

Обратите внимание, что в таблице R2VEG_SPECIESдевять связанных записей.


 

 

Вопрос 14: Класс отношений между R2VEG и таблицей R2VEG_SPECIES простой или сложный ?

 

 

Вопрос 15: Какое одно из основных свойств сложного отношения?

 

 

Может ли вид деревьев существовать там, где нет полигона растительности? Только не в реальном мире и, с помощью класса отношений, не в вашей базе геоданных.

 

 
Закройте диалоговое окно Атрибуты (Attributes).

 

 
Откройте атрибутивную таблицу слоя R2VEG и перейдите к отношению ToSpec.

Вопрос 16: Сколько всего записей в таблице R2VEG_SPECIES?

 

 

 
Закройте таблицы атрибутов.

 

 
Оставляя полигон выбранным, щелкните на кнопке Удалить (Delete) .

 

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

 

 
Из базы геоданных Exercise7 добавьте таблицу R2VEG_SPECIES в ArcMap.

 

 
Откройте таблицу R2VEG_SPECIES.

 

Вопрос 17: Сколько записей сейчас в таблице R2VEG_SPECIES?

 

 

Таблица R2VEG_SPECIES сейчас содержит на девять записей меньше, чем перед этим, из за операции каскадного удаления, инициированной классом отношений. Эта функциональность может помочь вам поддерживать ваши данные «незамусоренными». Представьте, что это простое отношение и вы удалили полигон. Все связанные записи останутся в соответствующих таблицах, что конечно не является эффективным способом управления данными. Если бы в классе отношений были участки и таблица владельцев, то простое отношение было бы эффективнее. Например, когда один участок удаляется, владелец остается в таблице, потому что он может владеть несколькими другими участками. В таком случае, сложное отношение не подходит, потому что вы в действительности теряете данные.

 а поле VEG_LINK и щелкните на кнопке Получить значения (Get Unique Values). Вопрос 18: Можете ли вы найти DEVLXX 1086 в списке значений?

 

 

 

Отношение с таблицей R2VEG_SPECIES - это отношение один ко многим. Другие классы отношений в базе геоданных Exercise7 все «один к одному».

 

Вопрос 19: Как вы думаете, повлияло ли удаление полигона на остальные таблицы?

 

 

Как вы можете видеть, классы отношений – это очень эффективные инструменты редактирования, которые помогут вам не «замусоривать» таблицы вашей базы данных. Все, что нужно, это удалить запись-источник, чтобы с ними автоматически и удалились все связанные записи-адресаты. Без сложного класса отношений, вам нужно было бы вручную удалять 15 записей.

 

 
Закройте диалоговое окно Выбрать по атрибутам (Select By Attributes).

 

 
Закройте атрибутивную таблицу.

 

 
В меню Редактор (Editor) выберите Завершить редактирование (Stop Editing) и щелкните Да (Yes), чтобы сохранить ваши изменения.

 

 
Закройте ArcMap, не сохраняя карту.

 

Заключение

 

Как вы увидели, редактирование в ArcMap более эффективно с доменами, подтипами и классами отношений. Домены дают вам уверенность в тех значениях, которые вы вводите. Интервальные домены позволяют найти некорректные данные, в то время, как домены кодированных значений дают вам список корректных значений, из которого можно выбирать. Вы должны вручную проверить интервальный домен, чтобы найти некорректные данные. Редактирование связанных таблиц через классы отношений – это очень эффективно и позволяет сохранять актуальность ваших данных. Если вы добавляете новый объект к таблице источнику, вы должны ввести значение первичного ключа и добавить запись в каждую связанную таблицу. Записи-адресаты не создаются автоматически, когда вы добавляете запись-источник. Все эти правила проверки, вместе с дополнительными объектами в базе геоданных, помогают сделать редактирование данных намного быстрее и эффективнее.


 

 

Ответы на Вопросы Упражнения 5A

 

 

Вопрос 1: Каково значение для PARTITION_TYPE?

 

Ответ: Watershed.

 

Вопрос 2: Каково значение ASPECT_CLASS для выбранной записи?

 

Ответ: West.

 

Вопрос 3: Почему эти выпадающие меню серые?

 



>
  • 232425
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • Далее ⇒