Построение реляционной базы данных и разработка инфологической модели
Одно из важнейших достоинств реляционных баз данных, как говорилось ранее, состоит в том, что можно хранить логически сгруппированные данные в разных таблицах и задавать связи между ними, объединяя их в единую базу. Для задания связи таблицы должны иметь поля с одинаковыми именами или хотя бы с одинаковыми форматами данных. Связь между таблицами устанавливает отношения между совпадающими значениями в этих полях. Такая организация данных позволяет уменьшить избыточность хранимых данных, упрощает их ввод и организацию запросов и отчетов. В Access можно задать три вида связи между таблицами: Один-ко-многим, Многие-ко-многим, Один-к-одному. Связь Один-ко-многим – наиболее часто используемый тип связи между таблицами. В такой связи каждой записи таблицы А может соответствовать несколько записей таблицы В (поля с этими записями называют внешними ключами), а запись таблицы В не может иметь более одной соответствующей ей записи в таблице А. При связи Многие-ко-многим одной записи таблицы А может соответствовать несколько записей в таблице В, а одной записи таблицы В – несколько записей таблицы А. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит по крайней мере из двух полей, одно из которых является общим с таблицей А, а другое – общим с таблицей В. При связи Один-к-одному запись в таблице А может иметь не более одной связанной записи в таблице В и наоборот. Это тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением Один-к-одному применяют для разделения очень широких таблиц, для отделения части таблицы в целях ее защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице.
Рассмотрим создание модели на примере следующих таблиц: Преподаватели, Студенты, Дисциплины и Оценки. Структура первой таблицы описана в Таблица 1., структура таблицы Дисциплины представлена на Рис. 9, структура двух оставшихся таблиц представлена в Таблица 2 и Таблица 3.
Таблица 2
Таблица 3
Рассмотрим связь между объектами Студенты и Дисциплины. Студент изучает несколько дисциплин, что соответствует многозначной связи. Понятно, что каждая дисциплина изучается множеством студентов. Это тоже многозначная связь. Таким образом, связь между Студенты и Дисциплины – Многие-ко-многим (M: N). Множественные связи усложняют управление базой данных (в Access при такой связи нельзя использовать механизм каскадного обновления), поэтому использовать такие связи нежелательно и нужно строить реляционную модель, не содержащую связей типа Многие-ко-многим. Для свзи будем использовать объект Оценки. Каждый студент имеет оценки по нескольким дисциплинам, поэтому связь между Студенты и Оценки будет Один-ко-многим (1: M). Каждую дисциплину сдает множество студентов, поэтому связь между Дисциплины и Оценки также будет Один-ко-многим (1: M). В результате получаем информационно-логическую модель базы данных, приведенную на Рис. 18
Рис. 18
Для создания логической модели нужно после создания, по крайней мере, структур таблиц в окне базы данных нужно выполнить команды Сервис/Схема данных или щелкнуть на панели инструментов иконку
Рис. 19
Рис. 20
Созданная схема данных будет в дальнейшем использоваться для создания форм, запросов и отчетов. Разработка форм
Основой диалогового интерфейса пользователя для работы с БД являются формы. Через формы может осуществляться первоначальная загрузка данных во взаимосвязанные таблицы БД, просмотр данных, а также их корректировка. Работая с формой, можно добавлять и удалять записи из таблицы, изменять значения полей, получать расчетные данные. В процессе работы может осуществляться контроль вводимых данных. Access позволяет создавать однотабличные формы (на основе одной таблицы) и многотабличные (для работы с несколькими взаимосвязанными таблицами). Создавать формы можно в режиме Конструктора и с помощью Мастера форм.. Рассмотрим создание формы для ввода/вывода данных с помощью Мастера форм.. С его помощью можно легко получить типовой макет формы, а далее доработать ее средствами Конструктора форм.
Воспользуйтесь поиском по сайту: ![]() ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|