Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Создание баз данных




Часто с карты переносятся не только сами объекты, но и связанная с ними информация (например, ширина лесных полос и дорог, названия рек или фамилии владельцев домов и т.п.). Подобная информация хранится в базах данных. Пакет Easy Trace поддерживает возможность привязки внешних баз данных к векторным объектам. Формат баз данных – DBF.

При этом Easy Trace позволяет:

· создавать таблицы данных заданной структуры;

· заполнять и редактировать эти таблицы в процессе оцифровки изображения;

· согласовывать таблицы и векторные файлы.

Связь с базой данных устанавливается для двух типов объектов: точки и полилинии. При этом базы данных определяются отдельно для линий и точек каждого векторного слоя. Таким образом, к любому слою проекта может быть подключено две базы данных. Структуру баз данных, т. е. связь их с теми или иными слоями (имена полей, их типы и размерности), можно задать вручную, либо унаследовать при создании проекта из проекта-прототипа.

Рассмотрим порядок создания базы данных.

· Открываем ранее созданный проект (если он уже не открыт);

· Выбираем команду «База данных» из меню «Проект» (рис. 50);

 

 

· Далее указываем каталог, в котором будут храниться все базы данных (рис. 51);

· Выбираем слой проекта и указываем, для каких объектов будет создана база данных, нажимая при этом + или + (рис. 52);

 

 


· В открывшемся окне «Атрибуты» представлены уже имеющиеся поля (рис. 53). Для добавления нового поля необходимо нажать +;

 

 


· Заполняем раскрывшуюся форму (рис. 54) и нажимаем +. В строке «Имя поля» указывается его название, например длина лесной полосы, ширина, дата чего-либо и т.д. Программа поддерживает шесть хорошо понятных типов переменных: Character, Numeric, Float, Logical, Date, Memo.

 

 


Создать новую базу можно в любой момент работы над проектом.

Следует заметить, что первое поле каждой базы данных обязано быть целочисленным (иметь тип NUMERIC и нулевое число десятичных знаков). Это поле используется как идентификатор записи и по нему происходит связывание записи с векторным объектом. При создании новой базы данных первое поле структуры генерируется автоматически. Редактировать его не рекомендуется.

Структура любой созданной базы данных доступна для редактирования в программе, однако в момент изменения структуры базы все ранее внесенные в нее записи будут утеряны. Для сохранения записей в базе можно редактировать ее извне в любой другой СУБД.

Как отмечалось, идентификатор записи БД– это целое число, по которому происходит связывание записи в базе данных с векторным объектом. Нулевое значение идентификатора используется для обозначения отсутствия связи объекта с базой данных. Уникальный идентификатор в пределах векторного слоя проекта, генерируется программой автоматически при запросе на привязку атрибутивных данных к еще не проидентифицированному объекту. Два объекта, лежащих на одном слое и имеющих одинаковые идентификаторы, ссылаются на одну и ту же запись базы данных. Это может произойти, например, при разрезании полилинии имеющей идентифицикатор.

Что происходит с идентификаторами при редактировании полилиний?

· При переносе на другой слой объект утрачивает идентификатор, т. к. объекты разных слоев имеют различную семантику.

· При копировании полилинии на другой слой новая полилиния не будет иметь идентификатора.

· При создании дубликата полилинии на том же слое новая полилиния не имеет идентификатора;

· При разбиении полилинии обе полилинии сохраняют исходный идентификатор;

· При слиянии двух полилиний одного слоя с одинаковыми идентификаторами полученная в результате полилиния имеет тот же идентификатор;

· При слиянии двух полилиний, лежащих на одном слое, с разными идентификаторами полученная в результате полилиния будет иметь идентификатор первой указанной линии;

· При слиянии двух полилиний (лежащих на одном слое), одна из которых имела идентификатор, а другая не была проидентифицирована, полученная в результате полилиния будет иметь тот же идентификатор, что и проидентифицированная;

· При слиянии двух полилиний с разных слоев полученная в результате полилиния сохраняет идентификатор полилинии, выбранной первой.

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

В процессе удаления/редактирования объектов в наборе использованных идентификаторов могут появиться «дыры», а также в результате «внешних» операций с базой данных в ней могут исчезнуть записи, на которые ссылаются векторные объекты или остаться записи, не принадлежащие никаким объектам.

Операция «Упаковка идентификаторов» приводит во взаимное соответствие векторные слои проекта и соответствующие им таблицы базы данных. Операция «Упаковка идентификаторов» вызывается через соответствующую команду меню «Утилиты». На рис. 55 представлено окно инструмента «Упаковка идентификаторов». Упаковке подвергаются только слои, отмеченные в окне «Выбор слоя».

 


При использовании команды «Упаковка идентификаторов» все идентификаторы на слое перенумеровываются по порядку. При этом из базы данных удаляются записи, на которые нет ссылок, и, наоборот, удаляются идентификаторы объектов, для которых отсутствуют записи в соответствующей базе данных.

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

Если при создании какого-либо поля базы данных была включена опция «Авто», то при формировании записи для объекта это поле будет содержать последнее введенное значение. Если опция «Авто» отключена, то при создании новой записи поле инициализируется пустой строкой.

Новая запись будет добавлена в базу только по нажатию клавиши «OK». Если нажать «Отмена», идентификации объекта не произойдет.

В случае, когда различные части одного общего проекта обрабатывались в виде отдельных проектов на разных компьютерах и к каждому из них была подключена база данных, или необходимо импортировать в документ файл другого формата (например, DXF), векторные примитивы которого связаны с базой данных, то перед выполнением операции «Сшивка векторных сегментов» следует слить все базы данных в любой СУБД.

Проверить состояние базы данных можно с помощью команды «Информация» в диалоговом окне «Настройка слоев проекта» (Проект Слои проекта).

Очень полезной является команда выбор по критерию инструмента «Групповой редактор», при выборе которой открывается окно (рис. 56).

 

 


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

 




Поделиться с друзьями:


Дата добавления: 2015-07-02; Просмотров: 658; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.