Читать в оригинале

<< ПредыдущаяОглавлениеСледующая >>


1.3.3. Связи

Приступим к связыванию таблиц.

В окне базы данных щелкаем правой кнопкой мыши на чистом месте и в появившемся меню выбираем «Схема данных» (или в главном меню выбираем «Сервис \ Схема данных»).

В появившемся окне «Добавление таблицы» выделяем все таблицы и нажимаем кнопки «Добавить» и «Закрыть». В окне «Схема данных» добавленные таблицы можно перетаскивать, располагая удобным способом.

Выделив поле «Код туриста» в таблице «Туристы» и не отпуская левой кнопки мыши, перетащим его на поле «Код туриста» таблицы «Информация о туристах» (рис. 8).

Рис. 8. Создание связи между таблицами

После отпускания кнопки мыши появляется окно «Изменение связей», в котором отмечаем галочки «Обеспечение целостности данных», «Каскадное обновление связанных полей» и «Каскадное удаление связанных записей», а затем нажимаем кнопку «Создать» (рис. 9).

Рис. 9. Определение параметров связи

Определение этих параметров позволит автоматически обновлять связанные записи в таблицах при их изменении. В окне появилась связь между таблицами, которая была создана Microsoft Access (рис. 10).

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

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

Рис. 10. Связь между таблицами

Около полей «Код туриста» обеих таблиц на связи расположено изображение единицы, указывающее на принадлежность связи к отношению «один-к- одному». Это означает, что одной записи в таблице «Туристы» будет соответствовать одна запись в таблице «Информация о туристах». Существуют также другие типы отношений - «один-ко-многим» и «многие-ко-многим». Отношение «один-ко-многим» далее появится у нас между таблицами «Информация о туристах» и «Путевки» - один турист может приобрести несколько путевок, что и находит логическое отражение в связи между таблицами.

Другой возможный тип - «многие-ко-многим» в нашей базе данных отсутствует, но его примером может служить связь между таблицами с преподавателями и предметами: один преподаватель может вести несколько предметов, но и один предмет могут вести несколько преподавателей.

Продолжая определение связей между таблицами, получим следующую схему базы данных (рис. 11).

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

Рис. 11. Схема данных базы BDTur_firm.mdb

На рис. 12 приведена раскрытая группа таблиц - «Туристы» - «Информация о туристах» - «Путевки» - «Оплата». По схеме данных несложно определить таблицы, представленные на данном рисунке.

Рис. 12. Группа вложенных таблиц

Таблица «Туры» также содержит вложенную группу дочерних таблиц «Туры» - «Сезоны» - «Путевки» - «Оплата» (рис. 13).

Рис. 13. Вложенная группа таблиц «Туры» - «Сезоны» - «Путевки» - «Оплата»

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

Программа Microsoft Access с самого начала создавалась как средство управления и проектирования баз данных для офисной работы и задач небольших организаций. Ограничение максимального количества одновременно работающих пользователей (всего 255) делает невозможным использование базы данных даже для управления среднего по размерам Интернет-магазина или форума. Для обслуживания крупных проектов используются более мощные системы, например, Microsoft SQL Server.

 



<< ПредыдущаяОглавлениеСледующая >>