Применение геоинформационных систем в геоэкологических исследованиях |
Страница 22 из 49
Связывание и соединение таблиц Давольно часто данные необходимые при геоэкологических исследованиях содержатся в различных таблицах, которые просто необходимо соединить в единую базу данных или базу знаний. Для этого в ГИС ArcView 3.2 предусмотрена процедура связывания таблиц. Связывание и соединение таблиц в ArcView производится также, как и у любых баз данных реляционного формата: с помощью ключевых полей. Это означает, что обе связываемые или соединяемые таблицы должны иметь по полю с одинаковыми параметрами объектов. При этом не обязательно, чтобы поля в обеих таблицах назывались одинаково, вполне допустимо, чтобы они назывались по-разному, важно только, чтобы в этих полях хранились значения одинаковых параметров объектов. Связывание таблиц означает лишь установление связи между таблицами, при этом сами таблицы проекта не изменяются. Тип связи между объектами двух таблиц может быть любым: «один к одному», «один ко многим», «многие к одному», «многие к многим». Связанные таблицы позволяют осуществлять выбор объектов в одной таблице при помощи выбора объектов в другой таблице. Например, имеется электронная карта ландшафтных таксонов или таксонов экологической устойчивости и т.п. На этой карте может быть много отдельных таксонов, относящихся, например, к «холмисто-моренным комплексам ельниками зеленомошными». Если даже это, отнюдь не самое длинное название записывать в символьное поле атрибутивной таблицы полигонального слоя, то в результате память компьютера будет использоваться явно нерационально. Эту проблему можно решить следующим образом: в атрибутивной таблице слоя ландшафтных комплексов держать поле с краткими аббревиатурами или номерами типов комплексов. Также в проекте нужно иметь таблицу с подробными названиями типов комплексов. Для возможности установления связи с таблицей атрибутов слоя ландшафтов в данной таблице должно иметься также поле с соответствующими номерами или краткими аббревиатурами типов комплексов. Именно эти поля будут ключевыми для установления связи между таблицами. Связь таблицы подробных названий комплексов с атрибутивной таблицей слоя ландшафтов будет относиться к типу «один ко многим». Наличие этой связи позволит выбрать в таблице подробных названий комплексов какой-либо определённый тип комплекса, и при этом на карте в слое ландшафтов будут автоматически выделены все, сколько бы их не было, пространственные объекты соответствующего типа ландшафтного комплекса. Соединение таблиц приводит к тому, что поля из одной таблицы добавляются в другую. Здесь единственно возможный тип соединения – «один к одному». Например, есть слой точечных объектов – пунктов мониторинга окружающей среды. Положение этих пунктов неизменно за продолжительный период времени. Необходимо отразить на карте результаты мониторинга по данным определённой съёмки или осреднённые данные за какой-либо период наблюдений. В любом случае необходимо создать таблицу значений таким образом, чтобы каждому пункту наблюдений соответствовала только одна запись (строка) таблице. Несоблюдение этого требования приведёт к тому, что при добавлении данных к атрибутивной таблице слоя точек отбора проб к записям будет добавляться та запись из относящихся к данной точке, которая окажется выше других в добавляемой таблице. Измененная атрибутивная таблица слоя точек получит статус «небазовой». Это означает, что физически она состоит из нескольких таблиц, параметры соединения которых хранятся во вспомогательных файлах с расширениями «sbn» и «sbx». Пользователь может выбирать объекты в небазовой таблице, но лишён возможности её редактировать. Впрочем, он может легко справиться с этой проблемой: достаточно создать по данному слою новый шейпфайл при помощи опции «Преобразовать в шейп-файл». В ArcView 3.2. можно связывать и соединять как атрибутивные таблицы векторных слоёв, так и добавленные в проект таблицы, не имеющие позиционной информации. Часто встречается необходимость связи или соединения атрибутивной таблицы векторной темы и обыкновенной реляционной таблицы. В окне проекта выбрать тип документов «Таблицы». Откройте две таблицы, которые необходимо связать или соединить. Выделите в них ключевые поля, которые содержат одинаковые для объектов обеих таблиц значения (например, идентификаторы точек отбора проб). Для этого в нижнем ряду кнопок Панели Инструментов таблицы выберите кнопку с изображением черной стрелки. После этого курсор примет вид чёрной стрелки. Последовательно наведите курсор на название ключевого поля каждой таблицы и нажмите левую кнопку манипулятора «мышь». Сначала нужно открыть таблицу-источник, откуда будут добавляться данные, затем ту, в которую они будут добавляться Таблицы нужно оставить открытыми, поскольку связывать и соединять можно только открытые таблицы. На Панели Инструментов станет активной кнопка с изображением двух таблиц со стрелками, направленными друг против друга, шестая справа в верхнем ряду («Соединить таблицы»). Кроме того, соединение таблиц можно выполнить с помощью опции «Соединить» ниспадающего меню «Таблица». Для связывания таблиц применяется опция «Связать» этого меню.
|