Слайды и текст доклада
Pic.2
Контрольные вопросы В чём заключается необходимость перехода от однотабличных БД к многотабличным? Можно ли создать таблицу без первичного ключа? Примеры составного первичного ключа Как реализуется …
Pic.3
Оптимальность БД В процессе проектирования базы данных сложно учесть все нюансы и сразу же реализовать БД самым оптимальным образом. Оптимальность БД означает отсутствие избыточности и …
Pic.4
Устранение неоптимальности Например, может оказаться, что какая-то (обычно текстовая) информация будет храниться в БД дважды, что как раз и будет являться избыточностью. Этого следует избегать. …
Pic.5
Понятие нормализации Нормализация – логически обоснованный потабличный процесс изменения структуры таблиц БД таким образом, что в дальнейшем при работе с таблицами все операции DML выполняются …
Pic.6
Аномалии при работе с БД Избыточное дублирование данных является причиной аномалий, возникающих при добавлении, редактировании и удалении кортежей (записей или строк таблицы). Аномалией называется …
Pic.7
Виды аномалий Аномалии модификации проявляются в том, что изменение одних данных может повлечь просмотр всей таблицы и соответствующее изменение некоторых записей таблицы Аномалии удаления — при …
Pic.8
Интуитивная нормализация Существует понятие «интуитивной нормализации» - оно сводится к тому, что повторяющиеся текстовые значения выносятся в отдельные таблицы. Также отдельные таблицы …
Pic.9
Теория нормализации Однако за несколько десятилетий сформировались чёткие постулаты нормализации, что является очень ценным достижением реляционной теории и практики, поскольку появились научно …
Pic.10
Нормальные формы Нормализация таблицы включает в себя определённые требования – так называемые нормальные формы (НФ). Существует три базовых НФ: первая нормальная форма (1НФ) вторая нормальная форма …
Pic.11
Определение НФ Нормальная форма — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки …
Pic.12
Три нормальные формы Требования эти должны быть выполнены последовательно, т. е. таблица сначала приводится к первой НФ, затем ко второй, и только потом к третьей. Например, если таблица приведена к …
Pic.13
Первая нормальная форма Первая нормальная форма требует, чтобы каждое поле таблицы было неделимым (атомарным), а также не содержало полей, одинаковых по своему функциональному назначению. Основные …
Pic.14
Требование атомарности Требование неделимости (атомарности) означает, что значение поля не должно делиться на более мелкие значения. Будет возможным такое деление или нет – определяется исключительно …
Pic.15
Атомарные атрибуты В теории баз это атрибуты, которые хранят единственное значение и не являются ни списком, ни множеством значений. Иными словами, это такие данные, разделение которых на …
Pic.16
Ещё пример на атомарность
Pic.17
Второе требование 1НФ Что же касается требования отсутствия полей, одинаковых по своему функциональному назначению, то вот пример с продажей книг в магазине. Пусть есть таблица, которая показывает, …
Pic.18
Пример нарушения 1НФ Эта таблица имеет два серьёзных недостатка. Во-первых, бросается в глаза количество нулей, т. е. дней в которые не продали ни одного экземпляра той или иной книги. Это реальные …
Pic.19
Идеологическая причина И потом, что делать, если в магазин завезут пятый вид книг? Напрашивающийся ответ: добавить ещё одно поле Но такой вариант крайне непроизводителен, и с точки зрения языка SQL …
Pic.20
Нормализованная таблица Таким образом, после устранения повторяющихся групп полей получаем такую таблицу:
Pic.21
Процесс приведения к 1НФ Устранить повторяющиеся группы в отдельных таблицах (одинаковые строки, одинаковые по смыслу столбцы). Создать отдельную таблицу для каждого набора связанных данных. …
Pic.22
Вторая нормальная форма Таблица должна находиться в первой нормальной форме. Любое её поле, не входящее в состав первичного ключа, функционально полно зависит от первичного ключа (все не-ключевые …
Pic.24
Практика Привести таблицу Sales ко 2НФ:
Pic.25
Третья нормальная форма 3НФ требует выполнения 2НФ, а также чтобы в таблице не имелось транзитивных зависимостей между не-ключевыми полями, т. е. чтобы значение любого поля таблицы, не входящего в …
Pic.26
Ещё пример Если добавить в таблицу Product поле total_cost, которое будет вычисляться как price * quantity, это будет нарушением третьей нормальной формы.
Pic.28
Нормализация: за и против Несмотря на очевидные преимущества, которые даёт нормализация, за всё нужно платить. Использование нормализации также имеет свою цену. С одной стороны приведение БД к 1, 2 и …
Pic.29
Накопительные поля Другая проблема, возникающая при нормализации, – это проблема производительности. В первую очередь это касается 3НФ. Строгое следование требованиям 3НФ приводит к необходимости …
Pic.30
Следование требованиям НФ В подобных случаях может иметь смысл не следовать строго требованиям, накладываемым нормальными формами. В первую очередь это касается 3НФ. К первым двум НФ все же БД …
Pic.31
Домашнее задание Спроектировать базу данных "Туристическая фирма". Необходимо хранить информацию: - о курортах (например: название, описание, рейтинг) - экскурсиях в рамках курорта …
Скачать презентацию
Если вам понравился сайт и размещенные на нем материалы, пожалуйста, не забывайте поделиться этой страничкой в социальных сетях и с друзьями! Спасибо!