Проектирование БД – процесс разработки структуры БД в соответствии с требованиями пользователей.
Уровни проектирования
1. Концептуальный уровень – процесс исследования ПО и анализа поставленной задачи.
Результат: концептуальная модель данных, составленная в терминах объектов.
Объект (сущность) – нечто существующее и различимое, для которого есть название и способ отличить подобный объект от другого (см. лекцию по UML).
2. Логический уровень проектирования – построение информационно-логической модели ПО в виде совокупности информационных объектов и их структурных связей.
Результат: – словарь данных и схема данных в графической форме.
3. Физический уровень проектирования – процесс реализации БД программными и языковыми средствами.
Реляционная модель данных
Организация данных в связанных таблицах. Аномалии. Таблицы объектов (справочные; UML – класс сущность) и таблицы связей (подчиненные; UML – класс управляющий)
Рассмотрим на примере работы дилеров фирмы «Цептер» в Санкт-Петербурге.
Дата | Дилер | Адрес | Телефон | Товар | Цена | Количество |
6.10.01 | Лопухов | наб. Фонтанки, 92 | 164-72-47 | Бокалы | ||
16.10.01 | Чайников | ул. Народная, 17 | 329-45-33 | Миски | ||
20.10.01 | Простых | Б.Морская, 67 | 272-00-87 | Миски | ||
25.10.01* | Лопухов | наб. Фонтанки, 92 | 164-72-47 | Кастрюли | ||
26.10.01 | Чайников | ул. Народная, 17 | 329-45-33 | Бокалы | ||
… |
Аномалии обновления
· аномалии редактирования – изменение единственного факта требует полного просмотра таблицы и замены значений в нескольких записях;
· аномалии удаления – удаление одного факта может вызвать потерю других (* – потеря цены);
· аномалии добавления – включение нового факта может оказаться невозможным до появления нескольких связанных с ним фактов.
Табл. 1. Дилеры (2,3,4), табл. 2 Товар (5,6) Табл. 3. Заказы (1,2,5,7)
Справочные таблицы Подчиненная таблица
Первые две таблицы описывают объекты, а третья их связывает.
Типы связей в таблицах
Ключи – связи таблицы. Связи классифицируются по типу отношений (1–1, 1–*, *–*).
Структура данных в таблице: поля и записи, ключи и характеристики
В таблицах объектов не может быть полностью совпадающих записей. Совокупность полей, значение которых позволяет однозначно определить объект, называется первичным ключом. Если этот первичный ключ занимает одно поле, он называется простой, а если несколько – составной.
Связь всегда требует наличия двух связанных объектов. В таблице связи тоже имеются ключи. Они называются вторичными и предназначены для однозначной идентификации объекта, определенного в другой таблице.
Структура таблицы – массив ячеек. Все, кроме 1-й, строки имеют одинаковую структуру записи.
Поля – ключевые и неключевые характеристики.
Характеристики – неключевые свойства объекта и без ключа лишены смысла.
Выводы
1. Реляционная база данных – совокупность таблиц без аномалий.
2. Для построения таблиц необходимо:
· выделить объекты по критерию самостоятельного существования;
· создать связующую таблицу;
· определить ключевые поля: первичные и вторичные;
· изобразить схематично.