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

Содержание

Слайд 2

Содержание: Структура связей в базах данных. Выделение списков в сложных структурах.

Содержание:

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

данных.
Нормализация баз данных.
Слайд 3

Структуры баз данных 1. Линейная, или список – самая простая структура.

Структуры баз данных

1. Линейная, или список – самая простая структура. Она

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

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

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

1. Иерархическая:

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

Слайд 5

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

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

1. Иерархическая:

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

Список связей всех элементов нижнего

уровня с корнем дерева
Слайд 6

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

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

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

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

Слайд 7

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

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

2. Сетевая:

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

1

2

Слайд 8

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

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

2. Сетевая:

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

Слайд 9

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

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

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

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

Слайд 10

Реляционные базы данных Списки удобнее всего представлять в виде таблиц. База

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

Списки удобнее всего представлять в виде таблиц.
База данных, представленная

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

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

Атрибуты

параметры

признаки

свойства

Числовые характеристики

Качественные характеристики

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

рост

вес

размер

пол

Цвет глаз

теплопроводность

Атрибуты

Слайд 12

Таблицы Количество полей определяется разработчиком и не может изменяться пользователем. Любое

Таблицы

Количество полей определяется разработчиком и не может изменяться пользователем.
Любое поле должно

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

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

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

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

выполнения операций модификации данных.

аномалии

обновления

добавления

удаления

Слайд 14

Аномалии обновления Такие аномалии могут возникнуть в том случае, когда информация

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

Такие аномалии могут возникнуть в том случае, когда информация дублируется.

Например,

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

Аномалии добавления Такие аномалии возникают в сетевой структуре, когда в качестве

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

Такие аномалии возникают в сетевой структуре, когда в качестве атрибута

в вертикальном списке берётся атрибут (-ы) какого-либо объекта из горизонтального списка.

Например, если в БД «Спортсмены» ввести новую запись,
то возникнет противоречие: код секции не соответствует её названию.

Горизонтальный список «Спортивные секции»

Слайд 16

Аномалии удаления Причина аномалий удаления та же, что и у аномалий

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

Причина аномалий удаления та же, что и у аномалий добавления:

в сетевой структуре в качестве атрибута в вертикальном списке берётся атрибут (-ы) какого-либо объекта из горизонтального списка.

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

Горизонтальный список «Спортивные секции»

Слайд 17

Нормализация Чтобы избавиться от всевозможных аномалий при работе с информацией, проводят

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

Чтобы избавиться от всевозможных аномалий при работе с информацией, проводят нормализацию

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

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

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

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

Ключи
горизонтальных
списков

Связи между
списками

Слайд 19

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

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

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

Ключи
горизонтальных
списков

Связи между
списками

Слайд 20

2. Любое поле должно быть неделимым 3. Не должно быть полей,

2. Любое поле должно быть неделимым

3. Не должно быть полей,

которые могут быть найдены с помощью остальных

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

Слайд 21

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

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

4. Не должно быть полей, которые

обозначают различные виды одного и того же.
Слайд 22

Алгоритм нормализации: 1. Определение классов объектов, входящих в её состав. 2.

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

1. Определение классов объектов, входящих в её состав.
2. Замена связи

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

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

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

Два автора в одном поле

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

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

Слайд 24

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

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

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

Книги

Слайд 25

Выделяем повторы в отдельные списки: Связь 1-1 1 1

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

Связь 1-1

1

1

Слайд 26

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

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