Базы данных
Содержание:
Выделение списков в сложных структурах
Выделение списков в сложных структурах
Иерархическая структура
Выделение списков в сложных структурах
Выделение списков в сложных структурах
Сетевая структура
Реляционные базы данных
Аномалии модификации данных
Аномалии обновления
Аномалии добавления
Аномалии удаления
Нормализация
Нормализация
Нормализация
Дополнительные требования к нормализованной базе данных
Алгоритм нормализации:
Пример для демонстрации нормализации
Классы, связанные соотношением 1-1:
Выделяем повторы в отдельные списки:
Приведение к нормальной форме
Структура связей:
511.00K
Категория: Базы данныхБазы данных

Структура связей в БД. Выделение списков в сложных структурах. Нормализация БД

1. Базы данных

Учитель информатики гимназии №1 г. Жуковского
Московской области Ю.В.Пашковская

2. Содержание:

1.
2.
3.
4.
Структура связей в базах данных.
Выделение списков в сложных
структурах.
Реляционные базы данных.
Нормализация баз данных.

3.

Структуры баз данных
1. Линейная, или список – самая простая структура. Она
представляет собой набор не связанных между собой однотипных
элементов, собранных по какому-либо признаку.
2. Иерархическая, или многоуровневый список, или дерево: каждый
элемент нижнего уровня связан с одним элементом верхнего.
3. Сетевая – набор узлов, в котором каждый может быть связан с
каждым.

4. Выделение списков в сложных структурах

1. Иерархическая:
Горизонтальные
списки

5. Выделение списков в сложных структурах

1. Иерархическая:
Вертикальный список
Список связей всех
элементов нижнего уровня
с корнем дерева

6. Иерархическая структура

Горизонтальные списки:
Вертикальный список:

7. Выделение списков в сложных структурах

2. Сетевая:
1
Горизонтальные
списки
2

8. Выделение списков в сложных структурах

2. Сетевая:
Вертикальный список

9. Сетевая структура

Горизонтальные списки:
Вертикальный список:

10. Реляционные базы данных

Списки удобнее всего представлять в виде таблиц.
База данных, представленная в виде набора
связанных между собой простых таблиц,
называется реляционной.
Строки в таблицах называются записями, а
столбцы – полями.
Записи описывают элементы списка, или объекты,
а поля – их характеристики, или атрибуты.
Реляционная база данных является
универсальной.

11.

Атрибуты
Атрибуты
параметры
Числовые характеристики
признаки
Качественные характеристики
свойства
Наличие способностей объекта,
приводящих к некоторому
результату
рост
вес размер
пол
Цвет глаз
теплопроводность

12.

Таблицы
1. Количество полей определяется разработчиком и не может изменяться
пользователем.
2. Любое поле должно иметь уникальное имя.
3. Поля могут иметь различный тип:
• Текстовый – строка символов (длиной до 255 символов)
• Числовой:
• вещественное число (с дробной частью)
• целое число
• денежная сумма
• дата, время, дата и время
• логическое поле (истина или ложь, да или нет)
• многострочный текст (МЕМО) - примечания
• рисунок, звук или другой объект (объект OLE)
4. Поля могут быть обязательными для заполнения или нет.
5. В каждой таблице должен быть ключ.
Ключ – это поле (или комбинация полей), которое однозначно
определяет запись. Чаще всего в качестве ключа берут порядковый
номер записи.

13. Аномалии модификации данных

При неправильно спроектированной схеме реляционной БД могут
возникнуть аномалии выполнения операций модификации данных.
аномалии
обновления
добавления
удаления

14. Аномалии обновления

Такие аномалии могут возникнуть в том случае,
когда информация дублируется.
Например, если пользователями базы решено заменить русское
название отряда Хищные на латинское – Carnivora, то вносить
исправления придётся во все записи, где встречается это название,
иначе данные станут противоречивы.

15. Аномалии добавления

Такие аномалии возникают в сетевой структуре, когда в
качестве атрибута в вертикальном списке берётся
атрибут (-ы) какого-либо объекта из горизонтального
списка.
Горизонтальный список
«Спортивные секции»
Например, если в БД «Спортсмены» ввести новую запись,
то возникнет противоречие: код секции не соответствует её названию.

16. Аномалии удаления

Причина аномалий удаления та же, что и у аномалий добавления:
в сетевой структуре в качестве атрибута в вертикальном списке
берётся атрибут (-ы) какого-либо объекта из горизонтального
списка.
Горизонтальный список
«Спортивные секции»
Например, если все спортсмены из секции Плавание решат уйти из
спорта, то из базы данных исчезнет и вся информация об этой
секции.

17. Нормализация

Чтобы избавиться от всевозможных
аномалий при работе с информацией,
проводят нормализацию базы данных.
Нормализация – это процедура, которая
позволяет устранить дублирование и
потенциальную противоречивость
хранимых данных.

18. Нормализация

1. Избавление от повторов в таблицах

Род
Семейство
Отряд
1
Волк
1
1
2
Шакал
1
1
3
Енотовидная собака
1
1
4
Медведь бурый
2
1
5
Медведь белый
2
1
6
Медведь гималайский
2
1
Связи между
списками
Ключи
горизонтальных
списков

19. Нормализация

1. Избавление от повторов в таблицах
Ключи
горизонтальных
списков
Связи между
списками

20.

Дополнительные требования к
нормализованной базе данных
2. Любое поле должно быть неделимым
Фамилия и имя
Фамилия
Имя
Иванов Петр
Иванов
Петр
Петров Иван
Петров
Иван



3. Не должно быть полей, которые могут быть найдены
с помощью остальных
Код
Товар
Цена за
тонну
1
Бананы
1200
10
12 000
2
Киви
1500
20
30 000

Кол-во, тонн
Стоимость

21. Дополнительные требования к нормализованной базе данных

4. Не должно быть полей, которые
обозначают различные виды одного и
того же.

1
2
3
Фамилия
Иванов И.И.
Петров П.П.
Сидоров С.С.

22. Алгоритм нормализации:

1. Определение классов объектов, входящих в её состав.
2. Замена связи «1 – 1» объединённым списком, в котором
объект одного класса выступает в качестве атрибута для
объекта другого класса.
3. Определение структуры связи между классами.
4. Замена каждой сложной структуры на вертикальный и
горизонтальные списки с указанием связей по ключевым
полям.
5. Внесение дополнительных атрибутов для каждого класса
объектов – в зависимости от степени детализации
объектов.
6. Обеспечение требования неделимости полей – в
зависимости от целей, стоящих перед будущими
пользователями базой данных.
7. Исключение вычисляемых полей.

23. Пример для демонстрации нормализации

Дублирование
информации
Два автора
в одном
поле
Дублирование
информации

24. Классы, связанные соотношением 1-1:

Книги
Все поля, за исключением поля автор.

25. Выделяем повторы в отдельные списки:

Связь 1-1
1
1

26. Приведение к нормальной форме

27. Структура связей:

English     Русский Правила