- •Введение
- •1 Анализ предметной области
- •Из истории.
- •Функциональная структура предметной области
- •Диаграмма потоков данных (dfd-диаграмма)
- •Концептуальное проектирование данных
- •Построение логической модели данных
- •3.1 Выделение ключей
- •Проектирование логической структуры
- •3.2 Нормализация отношений
- •3.3 Поддержка целостности данных
- •Выбор субд
- •Проектирование sql – запросов
- •Проектирование sql – запросов
- •1. Общие положения
- •8. 2 Приложение b – заполненные данными реляционные таблицы
- •8. 3 Приложение с – результаты отработки запросов (запрос – таблица ответа)
- •8. 4 Приложение d – код на встроенном языке субд
-
Построение логической модели данных
3.1 Выделение ключей
Исходной точкой построения логической схемы данных является представление предметной области в виде одного или нескольких отношений, и на каждом шаге проектирования производится некоторый набор схем отношений, обладающих лучшими свойствами.
При проектировании реляционной базы данных необходимо решить вопрос о наиболее эффективной структуре данных. Основные цели, которые при этом преследуются:
-
Обеспечить быстрый доступ к данным в таблицах.
-
Исключить ненужное повторение данных, которое может являться причиной ошибок при вводе и нерационального использования дискового пространства.
-
Обеспечить целостность данных таким образом, чтобы при изменении одних объектов автоматически происходило соответствующее изменение связанных с ними объектов.
Построим логическую модель данных в соответствии с концептуальной моделью данных. Выявим первичные, родительские и внешние ключи.
Составление логической структуры производится по правилам:
Первое правило: если экземпляр одной сущности связан с экземпляром другой сущности в отношении 1:1 или 1:N, то для связи необходимо первичный ключ одной сущности добавить во вторую;
Второе правило: если экземпляр одной сущности связан с экземпляром другой сущности в отношении N:N, то для связи необходимо создать дополнительную таблицу связи, в которую добавить первичные ключи из обеих таблиц.
Проектирование логической структуры
На заключительном этапе проектирования базы данных конструируется логическая модель на основании концептуальной. Логическая модель – это взаимосвязанные реляционные таблицы.
На основе первого правила получаем:
1) Автошкола – Договор
Автошкола
ИНН |
Лицензия |
Название |
Адрес |
Телефон |
Собственник |
Договор
ИНН |
№ договора |
Дата заключения |
Цель заключения |
2) Автошкола – Инструктор
Автошкола
ИНН |
Лицензия |
Название |
Адрес |
Телефон |
Собственник |
Инструктор
ИНН |
№ инструктора |
Пол инструктора |
ФИО инструктора |
Квалификация |
Телефон инструктора |
3) Ученик – Договор
Ученик
№ ученика |
ФИО |
Паспортные данные |
Договор
№ ученика |
№ договора |
Дата заключения |
Цель заключения |
4) Ученик – Инструктор
Ученик
№ ученика |
ФИО |
Паспортные данные |
Инструктор
№ ученика |
№ инструктора |
Пол инструктора |
ФИО инструктора |
Квалификация |
Телефон инструктора |
5) Ученик – Квитанция
Ученик
№ ученика |
ФИО |
Паспортные данные |
Квитанция
№ ученика |
№ квитанции |
Дата оплаты |
Сумма |
6) Личная анкета - Картотека
Личная анкета
№ анкеты |
Категория обучения |
Экзамен теория |
Экзамен практика |
Количество часов |
Картотека
№ анкеты |
№ карточки |
Дата окончания занятий |
Дата начала занятий |
Если экземпляр одной сущности связан с экземпляром другой сущности в отношении 1:1 или 1:N, то для связи необходимо первичный ключ одной сущности добавить во вторую;
На основе второго правила получаем:
7) Инструктор - Транспорт
№ инструктора |
№ транспорта |
8) Ученик - Личная анкета
№ ученика |
№ анкеты |
Второе правило: если экземпляр одной сущности связан с экземпляром другой сущности в отношении N:N, то для связи необходимо создать дополнительную таблицу связи, в которую добавить первичные ключи из обеих таблиц.