Перехід до нормалізаційних форм
Міністерство освіти та науки,молоді та спорту України
Херсонський політехнічний коледж
Одеського національного політехнічного університету
Реферат
З дисципліни «Системи керування базами даних»
на тему:
«Перехід до нормалізаційних форм»
Розробив:
Студент 391 групи
Бурлаков Денис
Нормалізація схем баз даних
Нормалізація - це розбивка таблиці на дві або більш, які характеризуються кращими властивостями при доповненні , зміні і вилученні даних. Кінцева мета нормалізації зводиться до отримання такого проекту бази даних, у котрому кожний факт з'являється лише в однім місці, тобто виключена надлишковість інформації. Це робиться не стільки з метою економії пам'яті, скільки для виключення можливої суперечливості збережених даних.
Кожна таблиця в реляційній БД задовольняє умові, у відповідності з якою у позиції на перетині кожного рядка і стовпця таблиці завжди знаходиться єдине атомарне значення і ніколи не може бути множини таких значень. Будь-яка таблиця, що задовольняє цій умові, називається нормалізованою.
Кожній нормальній формі відповідає деякий визначений набір обмежень. Відношення знаходиться в деякій нормальній формі, якщо задовольняється властивий їй набір обмежень.
Кожна нормальна форма є більш обмеженою і більш бажаною, ніж попередня. Це зв'язано з тим, що в (N+1)-ій нормальній формі вилучаються деякі небажані властивості, які характерні N-ій нормальній формі. Теорія нормалізації грунтується на наявності тієї або іншої залежності між полями таблиці.
Основні властивості нормальних форм:
· кожна наступна нормальна форма в деякому змісті краще попередньої;
· при переході до наступної нормальної форми властивості попередніх нормальних властивостей зберігаються.
Найбільше важливі нормальні
форми відношень грунтуються
на фундаментальному в теорії реляційних
баз даних понятті
Визначення 1. Функціональна залежність .
У відношенні R атрибут Y функціонально залежить від атрибута X (X і Y можуть бути складовими) у тому і тільки в тому випадку, якщо кожному значенню X відповідає в точності одне значення Y: X Y.
Визначення 2. Повна функціональна залежність.
Функціональна залежність X Y називається повною, якщо атрибут Y не залежить функціонально від будь-якої підмножини X.
Визначення 3. Транзитивна функціональна залежність .
Функціональна залежність називається транзитивною, якщо з функціональних залежностей X Y та Y Z випливає, що X Z.
Наприклад, Вінниця входить до Поділля, а Поділля -до України . Для даного прикладу має місце транзитивна залежність ВІННИЦЯ УКРАЇНА.
Визначення 4. Неключовий атрибут .
Неключовим атрибутом називається будь-який атрибут відношення, що не входить до складу первинного ключа .
Визначення 5. Взаємно незалежні атрибути .
Два або більш атрибути взаємно незалежні, якщо жодний із цих атрибутів не є функціонально залежним від інших.
Відношення R задано в першій нормальній формі, якщо воно задано у виді множини своїх кортежів , які не повторюються.
Для того, щоб представити відношення в першій нормальній формі необхідно над його кортежами виконати операцію проекції для видалення рядків, які повторюються.
Відношення R задано вдругій
нормальній формі, якщо воно, по-перше,
є відношенням у першій нормальній
формі і, по-друге, кожний його атрибут,
який не є основним атрибутом, функціонально
повно залежить від будь-якого
можливого ключа цього
Нехай задано відношення ФАКУЛЬТЕТ ( НАЙМЕНУВАННЯ, ПІБ ДЕКАНА, ТЕЛЕФОН).
Відношення ФАКУЛЬТЕТ задано в другій нормальній формі, тому що у відношенні ФАКУЛЬТЕТ атрибут ТЕЛЕФОН, який не є основним, повністю залежить від будь-якого можливого ключа: НАЙМЕНУВАННЯ, ПІБ ДЕКАНА.
У загальному випадку, якщо всі можливі ключі відношення містять по одному атрибуту, то це відношення задане в другій нормальній формі, тому що в цьому випадку всі атрибути, які не є основними, функціонально повно залежать від можливих ключів. Однак це твердження не завжди справедливе, якщо ключ відношення R є складовим.
Розглянемо наступне відношення:
СТУДЕНТ-КУРС ПРОЕКТ (НОМЕР ЗАЛІКОВОЇ КНИЖКИ, КОД ПРЕДМЕТУ, ПРІЗВИЩЕ СТУДЕНТА, НОМЕР ГРУПИ, ВИКЛАДАЧ, ПРОЦЕНТ ВИКОНАННЯ).
Припустимо, що в одній групі можуть навчаються однофамільці. Тоді для цього відношення можливий тільки один ключ: НОМЕР ЗАЛІКОВОЇ КНИЖКИ, КОД ПРЕДМЕТУ. Виходячи з прийнятого припущення, атрибут ПРІЗВИЩЕ СТУДЕНТА не входить у ключ. Тоді атрибут НОМЕР ЗАЛІКОВОЇ КНИЖКИ не визначається значенням атрибута ПРІЗВИЩЕ СТУДЕНТА, тобто атрибути ПРІЗВИЩЕ СТУДЕНТА і НОМЕР ГРУПИ не є основними, але функціонально залежать від основного атрибута НОМЕР ЗАЛІКОВОЇ КНИЖКИ, що входить у складовий ключ. Функціональні залежності між атрибутами цього відношення показані на рис. 4.7.
Рисунок 4.7 - Функціональна залежність
Розщепивши вихідне відношення на два нових у другій нормальній формі, можна усунути надлишковість (рис. 4.8 ). При виконанні цієї операції розбивки на два відношення враховано те, що атрибути, які функціонально залежать від одного основного атрибута разом із ним утворять одне відношення з єдиним ключем НОМЕР ЗАЛІКОВОЇ КНИЖКИ, а інші атрибути, які функціонально повно залежать від складового ключа ,залишено у вихідній схемі.
Рисунок 4.8 - Приклад усунення функціональної залежності
Розглянемо наступний приклад схеми відношення:
СПІВРОБІТНИКИ - ВІДДІЛИ - ПРОЕКТИ
(СПІВРОБ НОМЕР,СПІВРОБ ЗАРП, ВІДДІЛ НОМЕР, ПРО НОМЕР, СПІВРОБ ЗАВДАННЯ).
У відношенні використані скорочення : СПІВРОБ- співробітник, ЗАРП- зарплата, ПРО- проект.
Первинний ключ:
СПІВРОБ НОМЕР, ПРО НОМЕР.
Функціональні залежності:
СПІВРОБ НОМЕР -> СПІВРОБ ЗАРП
СПІВРОБ НОМЕР -> ВІДДІЛ НОМЕР
ВІДДІЛ НОМЕР -> СПІВРОБ ЗАРП
СПІВРОБ НОМЕР, ПРО НОМЕР -> СПІВРОБ ЗАВДАННЯ.
Хоча первинним ключем є складовий атрибут СПІВРОБ НОМЕР, ПРО НОМЕР, атрибути СПІВРОБ ЗАРП і ВІДДІЛ НОМЕР функціонально залежать від частини первинного ключа, тобто атрибута СПІВРОБ НОМЕР. В результаті, неможливо вставити у відношення СПІВРОБІТНИКИ - ВІДДІЛИ - ПРОЕКТИ кортеж, що описує співробітника, який ще не виконує ніякого проекту (первинний ключ не може містити невизначене значення). При видаленні кортежу не тільки руйнується зв'язок даного співробітника з даним проектом, але втрачається інформацію про те, що він працює в деякому відділі. При переводі співробітника в інший відділ необхідно модифікувати всі кортежі, які описують цього співробітника, або одержимо неузгоджений результат. Такі неприємні явища називаються аномаліями схеми відношення. Вони усуваються шляхом нормалізації.
Виконаємо декомпозицію відношення СПІВРОБІТНИКИ - ВІДДІЛИ в два відношення СПІВРОБІТНИКИ - ВІДДІЛИ і СПІВРОБІТНИКИ - ПРОЕКТИ :
СПІВРОБІТНИКИ - ВІДДІЛИ
(СПІВРОБ НОМЕР, СПІВРОБ ЗАРП, ВІДДІЛ НОМЕР)
Первинний ключ:
СПІВРОБ НОМЕР
Функціональні залежності:
СПІВРОБ НОМЕР -> СПІВРОБ ЗАРП
СПІВРОБ НОМЕР -> ВІДДІЛ НОМЕР
ВІДДІЛ НОМЕР -> СПІВРОБ ЗАРП
СПІВРОБІТНИКИ - ПРОЕКТИ
(СПІВРОБ_НОМЕР, ПРО НОМЕР, СПІВРОБ ЗАВДАННЯ)
Первинний ключ:
СПІВРОБ НОМЕР, ПРО НОМЕР
Функціональна залежність:
СПІВРОБ НОМЕР, ПРО НОМЕР -> СПІВРОБ_ЗАВДАННЯ
Кожне з цих двох відношень знаходиться в 2НФ і в них усунуті відзначені вище аномалії .
Відношення R знаходиться в третій нормальній формі (3НФ) у тому і тільки в тому випадку, якщо знаходиться в 2НФ і кожний неключовий атрибут нетранзитивно залежить від первинного ключа.
Наприклад, відношення:
ГУРТОЖИТОК (ПІБ СТУДЕНТА, НОМЕР ГРУПИ, НОМЕР КІМНАТИ, СТАРОСТА КІМНАТИ) знаходиться в другій нормальній формі, але не в третій, тому що атрибут СТАРОСТА КІМНАТИ залежить від атрибута НОМЕР КІМНАТИ, який у свою чергу залежить від атрибута ПІБ СТУДЕНТА і, отже, СТАРОСТА КІМНАТИ транзитивно залежить від ПІБ СТУДЕНТА. Це відношення можна привести до необхідної форми шляхом його розщеплення на два:
СТУДЕНТ-ГУРТОЖИТОК (ПІБ СТУДЕНТА, НОМЕР ГРУПИ, НОМЕР КІМНАТИ),
КІМНАТА -ГУРТОЖИТОК (НОМЕР КІМНАТИ. СТАРОСТА КІМНАТИ).
Залежності між атрибутами
вихідного й отриманих
Рисунок 4.9 - Приклад усунення транзитивної залежності
Нехай маємо відношення (ФІРМА, СКЛАД, ОБ'ЄМ ).
Для даного відношення характерні наступні аномалії.
1. Якщо в даний момент
відсутня фірма, яка отримує
товар зі складу, то в базу
даних неможливо ввести
2. Якщо фірма перестає отримувати товар зі складу, то данні про склад та його об'єм не можна зберігати в базі даних.
3. Якщо об'єм складу
змінився, то необхідно переглянути
всі рядки відношення і
Причиною аномалій для даного відношення є наявність транзитивного зв'язку між атрибутами.
Для усунення аномалій розіб'ємо вихідне відношення на два :
ЗБЕРІГАННЯ ( ФІРМА, СКЛАД),
ОБ'ЄМ (СКЛАД, ОБ'ЄМ).
На практиці в більшості випадків три нормальні форми схем відношень є достатніми і приведенням до третьої нормальної форми процес проектування реляційної бази даних , як правило, закінчується. Однак іноді корисно продовжити процес нормалізації.
Розглянемо наступний приклад схеми відношення:
СПІВРОБІТНИКИ-ПРОЕКТИ (СПІВРОБІТНИКА НОМЕР, СПІВРОБІТНИКА ПРИЗВІЩЕ, ПРОЕКТУ НОМЕР, СПІВРОБІТНИКА ЗАВДАННЯ) .
Можливі ключі (звернете увагу, що на цій стадії нормалізації в увагу приймаються існування можливих ключів):
СПІВРОБІТНИКА НОМЕР, ПРОЕКТУ НОМЕР
СПІВРОБІТНИКА ПРИЗВІЩЕ, ПРОЕКТУ НОМЕР .
Функціональні залежності:
СПІВРОБІТНИКА НОМЕР -> СПІВРОБІТНИКА ПРИЗВІЩЕ
СПІВРОБІТНИКА НОМЕР -> ПРОЕКТУ НОМЕР
СПІВРОБІТНИКА ПРИЗВІЩЕ -> СПІВРОБІТНИКА НОМЕР
СПІВРОБІТНИКА ПРИЗВІЩЕ -> ПРОЕКТУ НОМЕР
СПІВРОБІТНИКА НОМЕР, ПРОЕКТУ НОМЕР -> СПІВРОБІТНИКА
ЗАВДАННЯ
СПІВРОБІТНИКА ПРИЗВІЩЕ, ПРОЕКТУ НОМЕР ->
СПІВРОБІТНИКА ЗАВДАННЯ
У цьому прикладі припускаємо,
що особистість співробітника
Незалежно від того, який із можливих ключів обраний у якості первинного ключа, ця схема знаходиться в 3НФ. Однак той факт, що є функціональні залежності атрибутів відношення від атрибута, що є частиною первинного ключа, приводить до аномалій. Наприклад, для того, щоб змінити ПРИЗВІЩЕ співробітника з даним номером погодженим способом, буде потрібно модифікувати всі кортежі, які включають його номер. Введемо визначення.
Детермінантом називається будь-який атрибут, від котрого функціонально повно залежить деякий інший атрибут.
Нормальна форма Бойса-Кодда. Відношення R знаходиться в нормальній формі Бойса-Кодда (БКНФ) у тому і тільки в тому випадку, якщо кожний детермінант є можливим ключем.
Зауважимо, що якщо у відношенні є тільки один можливий ключ (який є первинним ключем), те це визначення стає еквівалентним визначенню третьої нормальної форми.
Очевидно, що ця вимога не виконана для відношення СПІВРОБІТНИКИ-ПРОЕКТИ. Можна зробити його декомпозицію до відношень СПІВРОБІТНИКИ і СПІВРОБІТНИКИ-ПРОЕКТИ:
СПІВРОБІТНИКИ (СПІВРОБІТНИКА НОМЕР, СПІВРОБІТНИКА ПРИЗВІЩЕ) .
Можливі ключі:
СПІВРОБІТНИКА НОМЕР
СПІВРОБІТНИКА ПРИЗВІЩЕ
Функціональні залежності:
СПІВРОБІТНИКА НОМЕР -> СПІВРОБІТНИКА ПРИЗВІЩЕ
СПІВРОБІТНИКА ПРИЗВІЩЕ -> СПІВРОБІТНИКА НОМЕР
СПІВРОБІТНИКИ-ПРОЕКТЫ (СПІВРОБІТНИКА НОМЕР,
ПРОЕКТУ НОМЕР, СПІВРОБІТНИКА ЗАВДАННЯ)
Можливий ключ:
СПІВРОБІТНИКА НОМЕР, ПРОЕКТУ НОМЕР
Функціональні залежності:
СПІВРОБІТНИКА НОМЕР, ПРОЕКТУ НОМЕР -> СПІВРОБІТНИКА ЗАВДАННЯ.
Можлива альтернативна декомпозиція,
якщо вибрати за основу СПІВРОБІТНИКА
ПРИЗВІЩЕ. У обох випадках отримані
відношення СПІВРОБІТНИКИ і СПІВРОБІТНИКИ-
Розглянемо відношення
R (МІСТО, АДРЕСА, ІНДЕКС).
Атрибут ІНДЕКС визначає індекс відділення зв'язку, яке обслуговує адресатів деякої вулиці міста, АДРЕСА - назву вулиці і номеру будинку. При цьому будемо припускати, що кортеж (С, S, Z) належить деякому відношенню зі схемою відношення R, якщо тільки в місті С є будинок за адресою S і Z є відповідним поштовим індексом. У цьому випадку мають місце наступні функціональні залежності:
МІСТО, АДРЕСА ІНДЕКС,
ІНДЕКС МІСТО.
Іншими словами, повна адреса (назва міста і адреса в місті) визначає поштовий індекс, а поштовий індекс, у свою чергу, визначає назву міста, але не визначає адресу, тому що одне відділення зв'язку обслуговує багато будинків на різних вулицях. Таким чином, в якості основного ключа можна вибрати одне з двох множин атрибутів:
МІСТО, АДРЕСА і
АДРЕСА, ІНДЕКС .
Схема відношення R (МІСТО, АДРЕСА, ІНДЕКС) не знаходиться в нормальній формі Бойса-Кода, так як має місце залежність ІНДЕКС МІСТО. Декомпозицією відношення його можна привести до нормальної форми Бойса-Кода.
Розглянемо приклад наступної схеми відношення:
ПРОЕКТИ( ПРОЕКТУ НОМЕР, ПРОЕКТУ СПІВРОБ, ПРОЕКТУ ЗАВДАННЯ) .
Відношення ПРОЕКТИ містить номера проектів, кожний проекту - список співробітників, які можуть виконувати проект, і список завдань, які передбачаються проектом. Співробітники можуть брати участь у декількох проектах, і різні проекти можуть включати однакові завдання.
Кожний кортеж відношення зв'язує деякий проект із співробітником, які беруть у цьому проекті, і з завданням, котре співробітник виконує в рамках даного проекту (припускаємо, що будь-який співробітник, який бере участь у проекті, виконує всі завдання, передбачені цим проектом). Через сформульовані вище умови єдиним можливим ключем відношення є складовий атрибут ПРОЕКТ НОМЕР, ПРОЕКТ СПІВРОБ, ПРОЕКТ ЗАВДАННЯ, і немає ніяких інших детермінантів. Отже, відношення ПРОЕКТИ знаходиться в БКНФ. Але при цьому воно має аномалії: якщо, наприклад, деякий співробітник приєднується до даного проекту, необхідно вставити у відношення ПРОЕКТИ стільки кортежів, скільки завдань у ньому передбачено.
У відношенні R (A, B, C) існує багатозначна залежність (multi-valued dependence - MVD) R. A R. B в тому і тільки в тому випадку, якщо множина значень B, що відповідає парі значень A і C, залежить тільки від A і не залежить від С.
У відношенні ПРОЕКТИ існують наступні дві багатозначні залежності:
ПРОЕКТ НОМЕР ПРОЕКТ СПІВРОБ
ПРОЕКТ НОМЕР ПРОЕКТУ ЗАВДАННЯ .
Неважко показати, що в загальному випадку у відношенні R (A, B, C) існує багатозначна залежність A B у тому і тільки в тому випадку, коли існує багатозначна залежність A C.
Відношення R знаходиться
в четвертій нормальній формі (4НФ)
у тому і тільки в тому випадку,
якщо у випадку існування
У нашому прикладі можна виконати декомпозицію відношення ПРОЕКТИ на два відношення
ПРОЕКТИ-СПІВРОБІТ і ПРОЕКТИ-
ПРОЕКТИ-СПІВРОБІТ ( ПРОЕКТ НОМЕР, ПРОЕКТ СПІВРОБІТ)
ПРОЕКТИ-ЗАВДАННЯ ( ПРОЕКТ НОМЕР, ПРОЕКТ ЗАВДАННЯ).
Обидва ці відношення знаходяться в 4НФ .
Розглянемо ще один приклад.
Нехай задано відношення
R (СТУДЕНТ, ТОВАРИСТВО, СУСПІЛЬНА РОБОТА, РІК).
Атрибут ТОВАРИСТВО визначає назву товариств, членом яких є студент; атрибути СУСПІЛЬНА РОБОТА І РІК - найменування суспільних доручень, виконуваних студентом, і рік їх призначення. Передбачається, що те саме суспільне навантаження не може бути призначена двічі протягом одного року тому самому студенту, але заміна одного навантаження на інше протягом року допускаються. У табл. 4.16 приведений фрагмент відношення .
Таблиця 4.16. Приклад відношення з нетривіальними залежностями
Виділимо нетривіальні багатозначні залежності:
СТУДЕНТ ТОВАРИСТВО,
СТУДЕНТ (СУСПІЛЬНА_РОБОТА, РІК) .
Вважаємо, що атрибут ТОВАРИСТВО не залежить від того, яку суспільну роботу веде студент. Атрибути СУСПІЛЬНА РОБОТА і РІК взаємозалежні.
Наявність подібних нетривіальних багатозначних залежностей у схемі одного відношення і незалежність їхніх правих частин в остаточному підсумку приводять до комбінації значень правих частин, що ілюструється в табл. 4.16. Відомості про те, що студент Іванов є старостою групи у 1999 р. повторюються двічі в силу того, що він є членом двох товариств (ВТВР, ДТСААФ). Для студента Петрова в зв'язку зі зміною суспільної роботи (1999 - 2000 р.) доводиться вводити додаткові кортежі, у яких буде повторюватися інформація про членство студента в товариствах ВТВР і ДТСААФ.
Незважаючи на виникаючу
при цьому надлишковість
Таблиця 4.17 Приклад відношення в четвертій нормальній формі
Таблиця 4.18.
Приклад відношення четвертій нормальній формі
В усіх розглянутих до цього часу нормалізаціях здійснювалась декомпозиція одного відношення на два. Іноді це зробити не вдається, але можлива декомпозиція в більше число відношень, кожне з який має кращі властивості.
Розглянемо, наприклад, відношення
СПІВРОБІТНИКИ-ВІДДІЛИ-ПРОЕКТИ(
ВІДДІЛУ НОМЕР, ПРОЕКТУ НОМЕР) .
Припустимо, що той самий співробітник може працювати в декількох відділах і в кожному відділі брати участь у декількох проектах. Первинним ключем цього відношення є повна сукупність його атрибутів. Відсутні функціональні і багатозначні залежності.
Тому відношення знаходиться в 4НФ. Однак у ньому можуть існувати аномалії, які можна усунути шляхом декомпозиції на три відношення.
Відношення R (X, Y, ... , Z) задовольняє залежності з'єднання * (X, Y, ... , Z) у тому і тільки в тому випадку, коли R відновлюється без втрат шляхом з'єднання своїх проекцій на X, Y, ... , Z.
Відношення R знаходиться в п'ятій нормальній формі у тому і тільки в тому випадку, коли будь-яка залежність з'єднання в R випливає з існування деякого можливого ключа в R.
Введемо наступні імена складових атрибутів:
З = {СПІВРОБ_НОМЕР, ВІДДІЛУ_НОМЕР}
СП = { СПІВРОБ _НОМЕР, ПРОЕКТУ_НОМЕР}
ВП = {ВІДДІЛУ_НОМЕР, ПРОЕКТУ_НОМЕР}.
Припустимо, що у відношенні
СПІВРОБІТНИКИ-ВІДДІЛИ-ПРОЕКТИ
На прикладах можна легко показати, що при вставках і видаленнях кортежів можуть виникнути проблема. Їх можна усунути шляхом декомпозиції вихідного відношення на три нових відношення:
СПІВРОБІТНИКИ-ВІДДІЛИ (СПІВРОБ_НОМЕР, ВІДДІЛУ_НОМЕР)
СОТРУДНИКИ-ПРОЕКТИ (СПІВРОБ_ НОМЕР, ПРОЕКТУ_НОМЕР)
ВІДДІЛИ-ПРОЕКТИ (ВІДДІЛУ НОМЕР, ПРОЕКТУ НОМЕР).
П'ята нормальна форма - це остання нормальна форма, яку можна одержати шляхом декомпозиції
На закінчення приведемо послідовність етапів нормалізації:
1. Перехід від структурної
моделі даних до плоских
2. Усунення всіх неповних
залежностей атрибутів, які не
є основними, від усіх
3. Усунення всіх транзитивних
залежностей атрибутів, які не
є основними, від усіх
4. Усунення всіх нетривіальних
багатозначних залежностей
Після того як визначені елементи даних і залежності між ними, ці етапи в принципі можуть бути виконані автоматично по приведеному алгоритмі.
Нормалізація схеми бази даних — покроковий процес розбиття одного відношення (на практиці: таблиці) відповідно до алгоритму нормалізації на декілька відношень на базіфункціональних залежностей.
Нормальна форма — властивість відношення в реляц
Таким чином, схема реляційної бази даних переходить у першу, другу, третю і так далі нормальні форми. Якщо відношення відповідає критеріям нормальної форми n, та всіх попередніх нормальних форм, тоді вважається, що це відношення знаходиться у нормальній формі рівня n.
Нормальні форми
Перша нормальна форма
Перша нормальна форма (1НФ, 1NF) утворює ґрунт для структурованої схеми баз даних:
- Кожна таблиця повинна мати основний ключ: мінімальний набір колонок, які ідентифікують запис.
- Уникнення повторень груп (категорії даних, що можуть зустрічатись різну кількість раз в різних записах) правильно визначаючи не-ключові атрибути.
- Атомарність: кожен атрибут повинен мати лише одне значення, а не множину значень.
Друга нормальна форма
Друга нормальна форма (2НФ, 2NF) вимагає, аби дані, що зберігаються в таблицях із композитним ключем не залежали лише від частини ключа:
- Схема бази даних повинна відповідати вимогам першої нормальної форми.
- Дані, що повторно з'являються в декількох колонках виносяться в окремі таблиці.
Третя нормальна форма
Третя нормальна форма (3НФ, 3NF) вимагає, аби дані в таблиці залежали винятково від основного ключа:
- Схема бази даних повинна відповідати всім вимогам другої нормальної форми.
- Будь-яке поле, що залежить від основного ключа та від будь-якого іншого поля, має виноситись в окрему таблицю.
Нормальна форма Бойса — Кодда
Відношення знаходиться в НФБК, тоді і лише тоді коли детермінант кожної функціональної залежності є потенційним ключем. Якщо це правило не виконується, тоді щоб привести вказане відношення до НФБК його слід розділити на два відношення шляхом двох операцій проекції на кожну функціональну залежність детермінант, якої не є потенційним ключем.[Джерело?]
- Проекція без атрибутів залежної частини такої функціональної залежності;
- Проекція на всі атрибути цієї функціональної залежності.
Визначення НФБК не потребує жодних умов попередніх нормальних форм. Якщо проводити нормалізацію послідовно, то в переважній більшості випадків при досягненні 3НФ автоматично будуть задовольнятися вимоги НФБК. 3НФ не збігається з НФБК лише тоді, коли одночасно виконуються такі 3 умови:[Джерело?]
- Відношення має 2 або більше потенційних ключів.
- Ці потенційні ключі складені (містять більш ніж один атрибут)
- Ці потенційні ключі перекриваються, тобто мають щонайменше один спільний атрибут.
Четверта нормальна форма
Четверта нормальна форма (4НФ, 4NF) вимагає, аби в схемі баз даних не було нетривіальних багатозначних залежностей множин атрибутів від будь чого, окрім надмножини ключа-кандидата. Вважається, що таблиця знаходиться у 4НФ тоді, і тільки тоді, коли вона знаходиться в НФБК, та багатозначні залежності є функціональними залежностями. Четверта нормальна форма усуває небажані структури даних — багатозначні залежності.
П'ята нормальна форма
П'ята нормальна форма (5НФ, 5NF, PJ/NF) вимагає, аби не було не тривіальних залежностей об'єднання, котрі б не витікали із обмежень ключів. Вважається, що таблиця в п'ятій нормальній формі, тоді, і тільки тоді, коли вона знаходиться в 4НФ, та кожна залежність об'єднання зумовлена її ключами-кандидатами.
Нормальна форма домен/ключ
Ця нормальна форма вимагає, аби в схемі не було інших обмежень окрім ключів та доменів.
Шоста нормальна форма
Таблиця знаходиться у 6NF, якщо вона знаходиться у 5NF та задовольняє вимозі відсутності нетривіальних залежностей. Зазвичай 6NF ототожнюють з DKNF.

- Перехід на двоступеневу систему навчання в Німеччині в умовах реалізації цілей Болонського процесу
- Перехід на єдиний податок
- Переход Италии в демократии после Второй Мировой войны
- Переход к капиталистическому хозяйству в странах Западной Европы
- Переход к мирному строительству
- Переход к новой экономической политике НЕП
- Переход количества в качество в процессе спортивной тренировки
- Переферийные устройства ЭВМ
- Переферические устройства ПЭВМ
- Переферійні пристрої пк
- Переферійні пристрої ПК
- Перефирийные устройства компьютера
- Перехід від стада до роду
- Перехід від тоталітаризму до демократії