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

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Выключите слой R2Trails и включите слой R2Veg.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Щелкните на инструменте Скетч (Sketch) и установите Целевой слой (Target) в R2VEG.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Измените Задача (Task) на Автозавершение полигона (AutoCompletePolygon) (в разделе Задачи топологии (TopologyTasks)).

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Приблизьтесь к области, показанной на следующем рисунке.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Еще немного приблизьтесь к области, показанной на следующем рисунке.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
В меню Редактор (Editor) выберите Замыкание (Snapping), чтобы открыть окно Параметры замыкания (Snapping Environment).

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Включите замыкание к ребру для слоя R2VEG.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте окно Параметры замыкания (Snapping Environment).

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Щелкните на инструменте Скетч (Sketch).

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

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Откройте диалоговое окно Атрибуты (Attributes) и раскройте выбранный объект.

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

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

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

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Щелкните правой кнопкой на надписи ToGISCalc и выберите Добавить новое (Add New). Должна появиться ошибка.

Шаг 4: Редактирование с использованием классов отношений - student2.ru Вопрос 13: Как вы думаете, почему возникла ошибка и каково решение?

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте сообщение об ошибке.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Измените значение VEG_LINK нового полигона на 99999и нажмите Enter.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Попробуйте добавить новую запись в класс отношений ToGISCalc еще раз. На этот раз операция должна быть успешной.

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

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

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Обновите несколько атрибутов в соответствии со следующей таблицей.

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

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

PARTITION_TYPE Watershed

PARTITION_ PASPXX

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

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

ASPECT_CLASS South West

SLOPE_PERCENT 43

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

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте диалоговое окно Атрибуты (Attributes).

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Перейдите по описанию класса отношений ToPolyLocal.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Прокрутите вниз таблицы.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
В первой пустой строке для VEG_LINK наберите 99999.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте таблицу Атрибуты (Attributes of) R2VEG_POLY_LOCAL.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Перейдите к классу отношений ToPolyLocal еще раз.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Обновите несколько полей вашей новой записи, используя таблицу ниже как подсказку.

Шаг 4: Редактирование с использованием классов отношений - student2.ru Поле Значение

Шаг 4: Редактирование с использованием классов отношений - student2.ru CHANGE_COVER_TYPE Aspen

OLD_GROWTH No

OLD_GROWTH_SOURCE Walk Through

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Сохраните ваши изменения.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте обе таблицы.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Используя любой удобный вам способ, выберите полигон DEVLXX 1086, который вы использовали ранее.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Откройте диалоговое окно Атрибуты (Attributes) и перейдите к классу отношений ToSpec.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Раскройте ToSpec, чтобы просмотреть связанные записи.

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

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

Вопрос 14: Класс отношений между R2VEG и таблицей R2VEG_SPECIES простой или сложный Шаг 4: Редактирование с использованием классов отношений - student2.ru ?

Шаг 4: Редактирование с использованием классов отношений - student2.ru Вопрос 15: Какое одно из основных свойств сложного отношения?

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте диалоговое окно Атрибуты (Attributes).

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Шаг 4: Редактирование с использованием классов отношений - student2.ru Откройте атрибутивную таблицу слоя R2VEG и перейдите к отношению ToSpec.

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте таблицы атрибутов.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Оставляя полигон выбранным, щелкните на кнопке Удалить (Delete) Шаг 4: Редактирование с использованием классов отношений - student2.ru .

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Из базы геоданных Exercise7 добавьте таблицу R2VEG_SPECIES в ArcMap.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Откройте таблицу R2VEG_SPECIES.

Шаг 4: Редактирование с использованием классов отношений - student2.ru Вопрос 17: Сколько записей сейчас в таблице R2VEG_SPECIES?

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Щелкните на кнопке Опции (Options) и выберите Выбрать по атрибуту (Select By Attributes).

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Щелкните на поле VEG_LINK и щелкните на кнопке Получить значения (Get Unique Values). Вопрос 18: Можете ли вы найти DEVLXX 1086 в списке значений?

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

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru Вопрос 19: Как вы думаете, повлияло ли удаление полигона на остальные таблицы?

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

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте диалоговое окно Выбрать по атрибутам (Select By Attributes).

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте атрибутивную таблицу.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
В меню Редактор (Editor) выберите Завершить редактирование (Stop Editing) и щелкните Да (Yes), чтобы сохранить ваши изменения.

Шаг 4: Редактирование с использованием классов отношений - student2.ru  
Закройте ArcMap, не сохраняя карту.

Заключение

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

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

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

Ответ: Watershed.

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

Ответ: West.

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

Наши рекомендации