
- •Проектирование и создание реляционной бд
- •3.1 Формализованное представление предметной области
- •3.2 Разработка информационной модели бд
- •3.3 Технология создания базовых таблиц-отношений в режиме конструктора
- •Технология установления связей между таблицами
- •Создание информационной системы (ис)
- •4.1 Конструирование запросов
- •4.1.1 Конструирование однотабличного запроса на выборку с параметром
- •4.1.2 Технология конструирования многотабличного запроса на выборку, содержащего вычисляемые поля
- •4.1.3 Технология конструирования перекрестного запроса
- •4.1.4 Конструирование запроса на обновление
- •Продолжение таблицы 2
- •4.2 Создание форм
- •Создание отчетов
- •Создание Главной кнопочной формы – Меню
- •Технология создания Главной страницы «Приложение видеосалон»
- •Технология создания вложенной страницы «Таблицы»
- •Технология создания вложенной страницы «Запросы»
- •Технология создания вложенной страницы «Отчеты»
- •Технология создания вложенной страницы «Отчеты2»
- •Настройка запуска «Приложения видеосалон»
3.3 Технология создания базовых таблиц-отношений в режиме конструктора
Технология создания структуры таблиц в режиме конструктора выглядит следующим образом:
-
после входа в приложение MS Access в группе объектов окна Базы данных выбираем объект «Таблицы»;
-
двойным щелчком на «Создание таблицы в режиме конструктора» открываем окно конструктора Таблица 1, в котором мы определяем структуру таблицы базы данных (рис.3.1).
Рисунок 3.1. Таблица1: таблица
При отображении таблицы в режиме Конструктора в окне можно выделить две основные области: сверху область Бланк и снизу Свойства поля.
Область Бланк – основная часть окна Режим конструктора таблиц.
В первом столбце Имя поля в верхней части окна вводятся имена полей. Во втором столбце Тип данных из раскрывающегося списка выбирается тип для каждого поля. Открывать список можно кнопкой выбора типа поля, которая является скрытым элементом управления, и отображается только после щелчка на поле бланка. В третьем столбце Описание можно хранить информацию о поле.
Нижняя часть бланка содержит список свойств поля, выделенного в верхней части. Некоторые свойства заданы по умолчанию. Свойства можно настраивать, а можно и не трогать.
-
Вводим данные (имена полей) и их типы. Имя поля – Код фильма задаем ключевым типом – счетчик (рис. 3.2).
Замечание 1. Обратим внимание на создание Первичного ключа (индексированного поля) таблицы, например, таблицы «Фильмы». Для этого выделяем поле Код фильма и правой кнопкой вызовем контекстное меню, с помощью которого задаем Ключевое поле или кнопкой Ключевое поле на панели инструментов.
Замечание 2. Режим конструктора позволяет изменять структуру таблиц.
В результате получаем таблицу (рис.3.2) со свойством для поля Код фильма и рис.3.3 с настроенным свойством для поля Продолжительность.
На рис.3.3 со свойством для поля Продолжительность Условие на значение настраивается логическим выражением >=60 And <=60*3, а Сообщение об ошибке – настраивается текстом «Недопустимое значение времени». При таких настройках во время ввода данных в таблицу, если задать продолжительность фильма вне диапазона ]60; 180[ , то на экране появится сообщение об ошибке – Недопустимое значение времени.
Рисунок 3.2. Таблица 1
Рисунок 3.3. Таблица 1
Замечание. Обратите внимание, что разного типа данные имеют разные свойства.
После закрытия окна Таблица, появляется окно (рис.3.4):
Рисунок 3.4. Сообщение Microsoft Access
Подтверждаем сообщение – нажимаем на кнопку «Да». Открывается окно Сохранение (рис.3.5):
Рисунок 3.5. Сохранение
Задаем
имя таблицы Фильмы и нажимаем на кнопку
.
Далее в режиме Таблицы в таблицу Фильмы вводим исходные данные (рис.3.6). Все базовые таблицы были созданы по вышеизложенной технологии. Они приведены в приложении.
Рисунок 3.6 Фильмы: таблица
-
Технология установления связей между таблицами
Если структура базы данных продумана заранее, а связи между таблицами намечены, то создание реляционных отношений между таблицами (связей) выполняется просто.
При создании связей между таблицами они отражается в окне Схема данных в виде линии, соединяющей два поля разных таблиц (рис.3.9). При этом одна из таблиц считается главной, а другая -связанной (подчиненной). Главная – это таблица, которая участвует в связи своим ключевым полем.
Рассмотрим, как создается связь между таблицами «Фильмы» и «Квитанции». В этой связи таблица «Фильмы» является главной, так как связана с таблицей «Квитанции» Ключевым (уникальным) полем Код фильма. В таблице «Квитанции» поле Код фильма не является уникальным, так как носители информации с одним и тем же фильмом могут быть проданы разным клиентам (многим). Такая связь называется «Один – ко – многим». А таблица «Квитанции» является связанной (подчиненной).
Установка связи начинается с открытия окна Схема данных и выбора таблиц, между которыми следует установить связь. Для этого, находясь в окне базы данных, выбираем опцию Схема данных в меню Сервис (или нажимаем кнопку Схема данных на панели инструментов).
При первом открытии этого окна для текущей базы данных, оно будет пусто, откроется диалоговое окно Добавление таблицы (рис.3.7). Щелкнем кнопкой мыши по имени первой таблицы «Квитанции», а затем по кнопке Добавить. В окне Схемы данных отображается выбранная таблица со всеми своими полями. Также нужно выбрать остальные таблицы. После выбора таблиц щелкнем по кнопке Закрыть. Окно Добавление таблицы закрывается.
На экране появится диалоговое окно Схемы данных. Мы видим выбранные таблицы со своими полями. Ключевые поля выделяются полужирным шрифтом, как на рис.3.10, только без связей между таблицами.
Рисунок 3.7. Добавление таблицы.
Замечание: Если вы ранее просматривали или изменяли связи, то диалоговое окно будет содержать последнюю сохраненную вами схему данных.
Далее устанавливаем связь между таблицами «Фильмы» и «Квитанции». Для этого щелкнем в главной таблице «Фильмы» по полю Код Фильма и, не отпуская кнопки мыши, подводим курсор мыши (перетаскиваем) к полю Код Фильма подчиненной таблицы «Квитанции». Затем отпускаем кнопку мыши. В появившемся окне Изменение связей устанавливаем параметры изменения как на рис.3.8 и нажимам на кнопку ОК. Тип отношения «Один – ко – многим» используемый выше применяется наиболее часто.
Рисунок 3.8. Окно «Изменение связей»
Теперь установим связь между равнозначными таблицами «Фильмы» и «Информация о носителе». Всю информацию о фильмах в этих таблицах можно было бы задать в одной таблице, но она была разбита на две таблицы. С двумя созданными таблицами проще работать, так как во время функционирования ИС таблица «Фильмы» может пополняться только новыми фильмами, а данные в таблице «Информация о носителе» могут не только пополняться, но и изменяться во время функционирования ИС, например, поля о носителях фильма и цене фильмов. Связь между этими таблицами устанавливаем «Один – к – одному». Поле Название в обеих является уникальным.
При установке типа отношения «Один – к – одному» обе таблицы являются равнозначными, поэтому неважно, из какой таблицы мы перетаскиваем связующее поле Название (рис.3.9).
Рисунок 3.9. Окно «Изменения связей»
Аналогично первой связи (рис.3.8) устанавливаем связи «Один – ко – многим» между таблицами: Клиенты – Квитанция, Вид сделки – Квитанция, Персонал – Квитанция.
Созданная схема данных приведена на рисунке (Рис.3.10).
В полученной БД (рис. 3.9) имеет место неизбыточное дублирование данных, но отсутствует избыточное.
Рисунок 3.10. Схема данных
Таблицы «Фильмы», «Информация о носителе» содержат неизбыточное дублирование данных (поле – Название). В связанных таблицах «Фильмы», «Клиенты», «Вид сделки», «Персонал» и «Квитанции» отсутствует избыточное дублирование данных, так как они были получены на основе процедур нормализации отношений, разбиением (декомпозицией) одной таблицы – отношения на несколько взаимосвязанных таблиц.