Базы данных. НФ БК; 4-5 нормальные формы
Презентация:
docs.google.com/presentation/...
Задачи (приводим таблицы к нормальным формам):
Задача 1: docs.google.com/spreadsheets/...
Задача 2: docs.google.com/spreadsheets/...
Задача 3: docs.google.com/spreadsheets/...
Задача 4: docs.google.com/spreadsheets/...
Вводный курс по базам данных.
В этом занятии поговорим о:
- Нормализации базы данных
- Нормальной форме Бойса-Кодда
- 4 нормальной форме
- 5 нормальной форме
По любым вопросам, связанным с курсом можно писать на почту: okulov@rclass.pro
Личный канал Антона: / @about-code
Пікірлер: 65
Гена просто чёткий поцан ! Внатуре, пришёл значит и разложил чётенько всё и всем. Респект авторам.
@Rclass
2 жыл бұрын
Спасибо, мы старались)
Вы невероятно крут, объясняя таким простым языком. Огромное спасибо за возможность пользоваться Вашими материалами!
@Rclass
2 жыл бұрын
Спасибо, мы старались :)
и ни одного коммента про футболку Asking Alexandria) йеее рок
@Rclass
2 жыл бұрын
Еееее!
Жги дальше. Всегда полезно вспомнить основы
Класс! Чётко! Умеете, могёте. Гене привет
@Rclass
2 жыл бұрын
Спасибо, мы старались :)
Очень информативно. Спасибо большое!
Очень нравятся Ваши видео❤️🙏🏻Спасибо
@Rclass
2 жыл бұрын
Вам спасибо что смотрите :)
Спасибо, очень доходчиво!
Гена красавчик как есть показывает🤣
@Rclass
3 жыл бұрын
Спасибо, мы старались :)
Очень хорошо объяснил. Огромное спасибо !
@Rclass
3 жыл бұрын
Спасибо, мы старались! ^_^
Спасибо, материал супер! Подскажите, я правильно понимаю, что на 2:33 строка id=4 таблицы workers избыточная? Второй вопрос - для 5НФ. Правильно ли, что три атрибуты могут быть связаны двумя отношениями, а третье отношение в 5НФ является ограничивающим для будущих добавлений и избыточным для текущего состояния таблицы. Иными словами таблицу из примера 5НФ можно восстановить по двум из трех таблиц после декомпазиции?
@2:37 поясните пж, после декомпозиции в левой таблице имеются дублирующиеся строки с id=3, id=4, получается она не находится в 1-2 НФ, значит не находится и в 3НФ, и в НФБК? Также, правая таблица не имеет первичного ключа (project_id повторяются).
Смотрю перед экзаменом, спасибо! P.S Asking Alexandria - зачёт ❤
@Rclass
11 ай бұрын
Удачи)
Презентация 🔥🔥🔥
@Rclass
3 жыл бұрын
Спасибо, мы старались ^_^
просто огромное спасибо, статьи хабра читать невозможно! а это прям супер, Гена топ
@Rclass
Жыл бұрын
Спасибо, мы старались :)
Я когда учился вообще сложно было. Но тогда во времена диал ап модемов ютуба не было (
@Rclass
3 жыл бұрын
Интернет ночами по карточкам... Помним-помним)
Невероятно доступно, спасибо
@Rclass
Жыл бұрын
Спасибо большое :)
Спасибо, все очень доступно и понятно!
@Rclass
Жыл бұрын
Благодарим) Всё для вас :)
великолепное объяснение материала
@Rclass
2 жыл бұрын
Спасибо большое :)
Очень полезно и мемасики хорошие ))
в третьей задаче есть небольшая ошибка в исходной таблице: у одного и того же дома не может быть разная этажность (если, конечно же, не имелась ввиду этажность квартиры, что маловероятно при значениях 8 и 10)
@Rclass
3 жыл бұрын
Спасибо за отклик) Мы немного упростили реальный мир для данной задачи ^_^
Какая-то неточность на декомпозиции НФБК. почему связка Илья-Дизайн встречается 2 раза под разными id в таблице workers? И похоже, что в таблице workers тоже надо сделать декомпозицию, чтобы у каждого skill был свой id?
@andcoks
4 ай бұрын
Это просто два разных Ильи )
Друзья, очень крутые видео! Есть возможность добавить блок с ответами для самопроверки? Это был бы своего рода уникальный материал
@Rclass
Жыл бұрын
Хм. Отличная идея. Почему мы сами не догадались? :) Попробуем организовать.
Спасибо все понятно
@Rclass
2 жыл бұрын
Спасибо, мы старались :)
Правильно я понял, чтобы привести к любой нормальной форме нужно провести декомпозицию или разделить таблицу на две таблицы?
@Rclass
Жыл бұрын
Чаще всего да, но не всегда. У вас уже может быть 2 таблицы, но один из столбцов может быть не там, например.
Не понимаю, блин, 2:50, так же ведь по имени в таблице воркерс можно определить скилл, то есть неключевой снова по неключевому можно идентифицировать, с чего это НФБК ? Столько видосов посмотрел, везде одно и то же, не могу понять, что я пропустил и не так понял... А если ключевой составной (id + name), то это даже не вторая. А вообще, разве не может быть двух имён с разным скиллом (два разных сотрудника)? Как пример подобный понимать...
Для 4-й нормальной формы пример таблицы, конечно, максимально суррогатный :)
Два Ильи-то это ладно. Тёзки просто. А вот декомпозиция в НФБК привела к нарушению условия задачи, т.к. теперь к одному проекту можно добавить двух кураторов с одинаковыми направлениями.
есть одна проблемка, называется расходы на композицию. обращения к базе могут начать загибаться из за избыточного количества джоинов. крч с декомпозицией главное не переусердствовать
@Rclass
2 жыл бұрын
Да, поэтому нужно всегда понимать что ты делаешь и грамотно рассчитывать нагрузку :)
вообще не понимаю, чем третья усиленная форма отличается от второй, если что там, что там, мы вводим таблицу связей
Т.е. таблица может быть или не быть в 5НФ? Если Мишу в общую таблицу прописали как бека, то при декомпозиции - он потеряется(в этом смысл?) из-за нетривиальной зависимости по которой он может быть только фронтом? Или 5НФ - это приведение к декомпозированным таблицам? Предположим, Мишу НЕ заставляют писать бек, исходная таблица находится в 5НФ? Тогда почему по Гене, 5НФ - это устранение нетривиальных зависимостей, ведь они остались в таблице(Миша по прежнему только фронт). Или Гена не того чифирнул и имел в виду, что устраняются нарушения нетривиальных зависимостей?
Так стоп, почем в нфбк в таблице рабочие илья дважды записан, хотя скилл один???
@Rclass
3 жыл бұрын
Илья у нас один, и скилл один, а проекты разные :)
@mrlait5732
3 жыл бұрын
@@Rclass А если у него будет 50 проектов придется хранить 50 одинаковых Илья-Дизайн? Противоречит определению Нормализации (Нормализация удаление избыточности данных)
@Rclass
3 жыл бұрын
@@mrlait5732 вы про 3:04, например? Там ошибка, да, Илья должен быть один раз указан, всё верно :)
@mrlait5732
3 жыл бұрын
@@Rclass Спасибо, кста за ролики) Выборочно пересматриваю правила нормализации
@Rclass
3 жыл бұрын
@@mrlait5732 вам спасибо, что подмечаете баги в роликах ^_^
Спасибо
@Rclass
9 ай бұрын
Стараемся :)
Лайк за Гену
@Rclass
3 жыл бұрын
Спасибо, мы старались! :)
Спасибо. Гене, тоже.
@Rclass
Жыл бұрын
Гене как всегда отдельное спасибо) А вам спасибо что смотрите :)
и как теперь без Гены другие НФ понимать?
@Rclass
2 жыл бұрын
Мы задумаемся)