Лекція 2. ПРАВИЛА КОДДА. НОРМАЛІЗАЦІЯ ДАНИХ

Сайт: Навчально-інформаційний портал НУБіП України
Курс: Організація баз даних (КН+ІПЗ). Ч2☑️
Книга: Лекція 2. ПРАВИЛА КОДДА. НОРМАЛІЗАЦІЯ ДАНИХ
Надруковано: Гість-користувач
Дата: середа, 11 березня 2026, 04:50

1. Правила Кодда

ПРАВИЛА 0 ТА 1

0. ФУНДАМЕНТАЛЬНЕ ПРАВИЛО (FOUNDATION RULE)

РЕЛЯЦІЙНА СУБД ПОВИННА БУТИ ЗДАТНА ПОВНІСТЮ КЕРУВАТИ БАЗОЮ ДАНИХ, ВИКОРИСТОВУЮЧИ ЗВ'ЯЗКИ МІЖ ДАНИМИ.

1. ІНФОРМАЦІЙНЕ ПРАВИЛО (INFORMATION RULE)

ІНФОРМАЦІЯ ПОВИННА БУТИ ПРЕДСТАВЛЕНА У ВИГЛЯДІ ДАНИХ, ЩО ЗБЕРІГАЮТЬСЯ У КОМІРКАХ. ДАНІ, ЩО ЗБЕРІГАЮТЬСЯ У КОМІРКАХ, ПОВИННІ БУТИ АТОМАРНИМИ. ПОРЯДОК РЯДКІВ В РЕЛЯЦІЙНІЙ ТАБЛИЦІ НЕ ПОВИНЕН ВПЛИВАТИ НА ЗМІСТ ДАНИХ.

ПРАВИЛО ІНФОРМАЦІЇ. ВСЯ ІНФОРМАЦІЯ В БАЗІ ДАНИХ ПОВИННА БУТИ ПРЕДСТАВЛЕНА ВИКЛЮЧНО НА ЛОГІЧНОМУ РІВНІ І ЛИШЕ ОДНИМ СПОСОБОМ - У ВИГЛЯДІ ЗНАЧЕНЬ, ЩО МІСТЯТЬСЯ В ТАБЛИЦЯХ. ФАКТИЧНО ЦЕ НЕФОРМАЛЬНЕ ВИЗНАЧЕННЯ РЕЛЯЦІЙНОЇ БАЗИ ДАНИХ.

ПРАВИЛО 2

ПРАВИЛО ГАРАНТОВАНОГО ДОСТУПУ (GUARANTEED ACCESS RULE)

ДОСТУП ДО ДАНИХ ПОВИНЕН БУТИ ВІЛЬНИМ ВІД ДВОЗНАЧНОСТІ. ДО КОЖНОГО ЕЛЕМЕНТУ ДАНИХ ПОВИНЕН БУТИ ГАРАНТОВАНИЙ ДОСТУП ЗА ДОПОМОГОЮ КОМБІНАЦІЇ ІМЕНІ ТАБЛИЦІ, ПЕРВИННОГО КЛЮЧА РЯДКУ Й ІМЕНІ СТОВПЦЯ.

ПРАВИЛО 2 ВКАЗУЄ НА РОЛЬ ПЕРВИННОГО КЛЮЧА ПРИ ПОШУКУ ІНФОРМАЦІЇ В БАЗІ ДАНИХ. ІМ'Я ТАБЛИЦІ ДОЗВОЛЯЄ ЗНАЙТИ НЕОБХІДНУ ТАБЛИЦЮ, ІМ'Я СТОВПЦЯ ДОЗВОЛЯЄ ЗНАЙТИ ПОТРІБНИЙ СТОВПЕЦЬ, А ПЕРВИННИЙ КЛЮЧ ДОЗВОЛЯЄ ЗНАЙТИ РЯДОК, ЩО МІСТИТЬ ШУКАНИЙ ЕЛЕМЕНТ ДАНИХ.

 

ПРАВИЛО 3

СИСТЕМАТИЧНА ОБРОБКА NULL-ЗНАЧЕНЬ (SYSTEMATIC TREATMENT OF NULL VALUES)

НЕВІДОМІ ЗНАЧЕННЯ NULL, ВІДМІННІ ВІД БУДЬ-ЯКОГО ВІДОМОГО ЗНАЧЕННЯ, ПОВИННІ ПІДТРИМУВАТИСЯ ДЛЯ ВСІХ ТИПІВ ДАНИХ ПРИ ВИКОНАННІ БУДЬ- ЯКИХ ОПЕРАЦІЙ. НАПРИКЛАД, ДЛЯ ЧИСЛОВИХ ДАНИХ НЕВІДОМІ ЗНАЧЕННЯ НЕ ПОВИННІ РОЗГЛЯДАТИСЯ ЯК НУЛІ, А ДЛЯ СИМВОЛЬНИХ ДАНИХ - ЯК ПОРОЖНІ РЯДКИ.

ПРАВИЛО 3 ВИМАГАЄ, ЩОБ ВІДСУТНІ ДАНІ МОЖНА БУЛО УЯВИТИ ЗА ДОПОМОГОЮ НЕДІЙСНИХ ЗНАЧЕНЬ (NULL).

ПРАВИЛО 4

ПРАВИЛО ДОСТУПУ ДО СИСТЕМНОГО КАТАЛОГУ НА ОСНОВІ РЕЛЯЦІЙНОЇ МОДЕЛІ (DYNAMIC ON-LINE CATALOG BASED ON THE RELATIONAL MODEL)

СЛОВНИК ДАНИХ ПОВИНЕН ЗБЕРІГАТИСЯ У ФОРМІ РЕЛЯЦІЙНИХ ТАБЛИЦЬ, І СУБД ПОВИННА ПІДТРИМУВАТИ ДОСТУП ДО НЬОГО ЗА ДОПОМОГОЮ СТАНДАРТНИХ МОВНИХ ЗАСОБІВ, ТИХ САМИХ, ЯКІ ВИКОРИСТОВУЮТЬСЯ ДЛЯ РОБОТИ З РЕЛЯЦІЙНИМИ ТАБЛИЦЯМИ, ЩО МІСТЯТЬ ДАНІ КОРИСТУВАЧА.

ПРАВИЛО 4 СВІДЧИТЬ, ЩО РЕЛЯЦІЙНА БАЗА ДАНИХ ПОВИННА САМА СЕБЕ ОПИСУВАТИ. ІНШИМИ СЛОВАМИ, БАЗА ДАНИХ ПОВИННА МІСТИТИ НАБІР СИСТЕМНИХ ТАБЛИЦЬ, ЩО ОПИСУЮТЬ СТРУКТУРУ САМОЇ БАЗИ ДАНИХ.

ПРАВИЛО 5

ПРАВИЛО ПОВНОТИ ПІДМОВИ МАНІПУЛЮВАННЯ ДАНИМИ (COMPREHENSIVE DATA SUBLANGUAGE RULE)

СИСТЕМА УПРАВЛІННЯ РЕЛЯЦІЙНИМИ БАЗАМИ ДАНИХ ПОВИННА ПІДТРИМУВАТИ ХОЧА Б ОДНУ РЕЛЯЦІЙНУ МОВУ, ЯКА

А) МАЄ ЛІНІЙНИЙ СИНТАКСИС,

Б) МОЖЕ ВИКОРИСТОВУВАТИСЯ ЯК ІНТЕРАКТИВНОЮ, ТАК І В ПРИКЛАДНИХ ПРОГРАМАХ,

В) ПІДТРИМУЄ ОПЕРАЦІЇ ВИЗНАЧЕННЯ ДАНИХ, ВИЗНАЧЕННЯ УЯВЛЕНЬ, МАНІПУЛЮВАННЯ ДАНИМИ (ІНТЕРАКТИВНІ ТА ПРОГРАМНІ), ОБМЕЖУВАЧІ ЦІЛІСНОСТІ, УПРАВЛІННЯ ДОСТУПОМ ТА ОПЕРАЦІЇ УПРАВЛІННЯ ТРАНЗАКЦІЯМИ (BEGIN, COMMIT І ROLLBACK).

ПРАВИЛО 5 ВИМАГАЄ, ЩОБ СУБД ВИКОРИСТОВУВАЛА МОВУ РЕЛЯЦІЙНОЇ БАЗИ ДАНИХ. ТАКА МОВА ПОВИННА ПІДТРИМУВАТИ ВСІ ОСНОВНІ ФУНКЦІЇ СУБД - СТВОРЕННЯ БАЗИ ДАНИХ, ЧИТАННЯ І ВВЕДЕННЯ ДАНИХ, РЕАЛІЗАЦІЮ ЗАХИСТУ БАЗИ ДАНИХ І Т.Д.

ПРАВИЛО 6

ПРАВИЛО МОДИФІКАЦІЇ ПРЕДСТАВЛЕНЬ (VIEW UPDATING RULE)

КОЖНЕ ПОДАННЯ МАЄ ПІДТРИМУВАТИ ВСІ ОПЕРАЦІЇ МАНІПУЛЮВАННЯ ДАНИМИ, ЯКІ ПІДТРИМУЮТЬ РЕЛЯЦІЙНІ ТАБЛИЦІ: ОПЕРАЦІЇ ВИБІРКИ, ВСТАВКИ, МОДИФІКАЦІЇ І ВИДАЛЕННЯ ДАНИХ.

ПРАВИЛО 6 СТОСУЄТЬСЯ УЯВЛЕНЬ, ЯКІ Є ВІРТУАЛЬНИМИ ТАБЛИЦЯМИ, ЯКІ ДОЗВОЛЯЮТЬ ПОКАЗУВАТИ РІЗНИМ КОРИСТУВАЧАМ РІЗНІ ФРАГМЕНТИ СТРУКТУРИ БАЗИ ДАНИХ.

2. Правила Кодда (продовження)

ПРАВИЛО 7

ПРАВИЛО ВИСОКОРІВНЕВИХ ОПЕРАЦІЙ МОДИФІКАЦІЇ ДАНИХ (HIGH-LEVEL INSERT, UPDATE, AND DELETE)

ОПЕРАЦІЇ ВСТАВКИ, МОДИФІКАЦІЇ І ВИДАЛЕННЯ ДАНИХ ПОВИННІ ПІДТРИМУВАТИСЯ НЕ ТІЛЬКИ ПО ВІДНОШЕННЮ ДО ОДНОГО РЯДКУ РЕЛЯЦІЙНОЇ ТАБЛИЦІ, АЛЕ ПО ВІДНОШЕННЮ ДО БУДЬ-ЯКОЇ БЕЗЛІЧІ РЯДКІВ.

ПРАВИЛО 7 АКЦЕНТУЄ УВАГУ НА ТОМУ, ЩО БАЗИ ДАНИХ ЗА СВОЄЮ ПРИРОДОЮ ОРІЄНТОВАНІ НА МНОЖИНИ. ВОНО ВИМАГАЄ, ЩОБ ОПЕРАЦІЇ ДОДАВАННЯ, ВИДАЛЕННЯ І ОНОВЛЕННЯ МОЖНА БУЛО ВИКОНУВАТИ НАД МНОЖИНАМИ РЯДКІВ.

ПРАВИЛО 8

ПРАВИЛО ФІЗИЧНОЇ НЕЗАЛЕЖНОСТІ ДАНИХ (PHYSICAL DATA INDEPENDENCE)

ДОДАТКИ НЕ ПОВИННІ ЗАЛЕЖАТИ ВІД ВИКОРИСТОВУВАНИХ СПОСОБІВ ЗБЕРІГАННЯ ДАНИХ НА НОСІЯХ, ВІД АПАРАТНОГО ЗАБЕЗПЕЧЕННЯ КОМП'ЮТЕРІВ, НА ЯКИХ ЗНАХОДИТЬСЯ РЕЛЯЦІЙНА БАЗА ДАНИХ.

ПРИКЛАДНІ ПРОГРАМИ І УТИЛІТИ ДЛЯ РОБОТИ З ДАНИМИ ПОВИННІ НА ЛОГІЧНОМУ РІВНІ ЗАЛИШАТИСЯ НЕДОТОРКАНИМИ ЗА БУДЬ-ЯКИХ ЗМІНАХ СПОСОБІВ ЗБЕРІГАННЯ ДАНИХ АБО МЕТОДІВ ДОСТУПУ ДО НИХ.

ПРАВИЛО 9

ПРАВИЛО ЛОГІЧНОЇ НЕЗАЛЕЖНОСТІ ДАНИХ (LOGICAL DATA INDEPENDENCE)

ПРЕДСТАВЛЕННЯ ДАНИХ В ДОДАТКУ НЕ ПОВИННО ЗАЛЕЖАТИ ВІД СТРУКТУРИ РЕЛЯЦІЙНИХ ТАБЛИЦЬ. ЯКЩО В ПРОЦЕСІ НОРМАЛІЗАЦІЇ ОДНА РЕЛЯЦІЙНА ТАБЛИЦЯ РОЗДІЛЯЄТЬСЯ НА ДВІ, ПОДАННЯ ПОВИННЕ ЗАБЕЗПЕЧИТИ ОБ'ЄДНАННЯ ЦИХ ДАНИХ, ЩОБ ЗМІНА СТРУКТУРИ РЕЛЯЦІЙНИХ ТАБЛИЦЬ НЕ ПОЗНАЧАЛОСЯ НА РОБОТІ ДОДАТКІВ.

ПРАВИЛА 8 І 9 ОЗНАЧАЮТЬ ВІДДІЛЕННЯ КОРИСТУВАЧА ТА ПРИКЛАДНОЇ ПРОГРАМИ ВІД НИЗЬКОРІВНЕВОЇ РЕАЛІЗАЦІЇ БАЗИ ДАНИХ.

ПРАВИЛО 10

ПРАВИЛО НЕЗАЛЕЖНОСТІ КОНТРОЛЮ ЦІЛІСНОСТІ (INTEGRITY INDEPENDENCE)

ВСЯ ІНФОРМАЦІЯ, НЕОБХІДНА ДЛЯ ПІДТРИМКИ ЦІЛІСНОСТІ, ПОВИННА БУТИ В СЛОВНИКУ ДАНИХ. МОВА ДЛЯ РОБОТИ З ДАНИМИ ПОВИННА ВИКОНУВАТИ ПЕРЕВІРКУ ВХІДНИХ ДАНИХ І АВТОМАТИЧНО ПІДТРИМУВАТИ ЦІЛІСНІСТЬ ДАНИХ.

ПРАВИЛО 10 ГОВОРИТЬ, ЩО МОВА БАЗИ ДАНИХ ПОВИННА ПІДТРИМУВАТИ ОБМЕЖУВАЛЬНІ УМОВИ, ЩО НАКЛАДАЮТЬСЯ НА ДАНІ, ЯКІ ВВОДЯТЬСЯ, І ДІЇ, ЯКІ МОЖУТЬ БУТИ ВИКОНАНІ НАД ДАНИМИ.

ПРАВИЛО 11

ПРАВИЛО НЕЗАЛЕЖНОСТІ ВІД РОЗМІЩЕННЯ (DISTRIBUTION INDEPENDENCE)

БАЗА ДАНИХ МОЖЕ БУТИ РОЗПОДІЛЕНОЮ, МОЖЕ ПЕРЕБУВАТИ НА ДЕКІЛЬКОХ КОМП'ЮТЕРАХ, І ЦЕ НЕ ПОВИННО ВПЛИВАТИ НА ДОДАТКИ. ПЕРЕНЕСЕННЯ БАЗИ ДАНИХ НА ІНШИЙ КОМП'ЮТЕР НЕ ПОВИННО ВПЛИВАТИ НА ДОДАТКИ.

ПРАВИЛО 11 ГОВОРИТЬ, ЩО МОВА БАЗИ ДАНИХ ПОВИННА ЗАБЕЗПЕЧУВАТИ МОЖЛИВІСТЬ РОБОТИ З РОЗПОДІЛЕНИМИ ДАНИМИ, РОЗТАШОВАНИМИ НА ІНШИХ КОМП'ЮТЕРНИХ СИСТЕМАХ.

ПРАВИЛО 12

ПРАВИЛО УЗГОДЖЕНОСТІ МОВНИХ РІВНІВ (THE NONSUBVERSION RULE)

ЯКЩО ВИКОРИСТОВУЄТЬСЯ НИЗЬКОРІВНЕВА МОВА ДОСТУПУ ДО ДАНИХ, ВОНА НЕ ПОВИННА ІГНОРУВАТИ ПРАВИЛА БЕЗПЕКИ І ПРАВИЛА ЦІЛІСНОСТІ, ЯКІ ПІДТРИМУЮТЬСЯ МОВОЮ БІЛЬШ ВИСОКОГО РІВНЯ.

ПРАВИЛО 12 ЗАПОБІГАЄ ВИКОРИСТАННЮ ІНШИХ МОЖЛИВОСТЕЙ ДЛЯ РОБОТИ З БАЗОЮ ДАНИХ КРІМ МОВИ БАЗИ ДАНИХ, ОСКІЛЬКИ ЦЕ МОЖЕ ПОРУШИТИ ЇЇ ЦІЛІСНІСТЬ.


3. Нормалізація даних

ПОСЛІДОВНІСТЬ НОРМАЛЬНИХ ФОРМ

  • ПЕРША НОРМАЛЬНА ФОРМА (1NF);
  • ДРУГА НОРМАЛЬНА ФОРМА (2NF);
  • ТРЕТЯ НОРМАЛЬНА ФОРМА (3NF);
  • НОРМАЛЬНА ФОРМА БОЙСА-КОДДА (BCNF);
  • ЧЕТВЕРТА НОРМАЛЬНА ФОРМА (4NF);
  • П’ЯТА НОРМАЛЬНА ФОРМА, АБО НОРМАЛЬНА ФОРМА ПРОЕКЦІЇ-З’ЄДНАННЯ (5NF АБО PJ/NF).
  • КОЖНА НАСТУПНА НОРМАЛЬНА ФОРМА В ДЕЯКОМУ СЕНСІ КРАЩА ЗА ПОПЕРЕДНЮ
  • ПРИ ПЕРЕХОДІ ДО НАСТУПНОЇ НОРМАЛЬНОЇ ФОРМИ ВЛАСТИВОСТІ ПОПЕРЕДНІХ НОРМАЛЬНИХ ВЛАСТИВОСТЕЙ ЗБЕРІГАЮТЬСЯ

ОСНОВНІ ВЛАСТИВОСТІ НОРМАЛЬНИХ ФОРМ

  • КОЖНА НАСТУПНА НОРМАЛЬНА ФОРМА В ДЕЯКОМУ СЕНСІ КРАЩА ЗА ПОПЕРЕДНЮ
  • ПРИ ПЕРЕХОДІ ДО НАСТУПНОЇ НОРМАЛЬНОЇ ФОРМИ ВЛАСТИВОСТІ ПОПЕРЕДНІХ НОРМАЛЬНИХ ВЛАСТИВОСТЕЙ ЗБЕРІГАЮТЬСЯ

4. Визначення нормальних форм

ПЕРША НОРМАЛЬНА ФОРМА

Перша нормальна форма (1NF) - значення всіх атрибутів відносин атомарні

ФУНКЦІОНАЛЬНІ ЗАЛЕЖНОСТІ

Функціональна залежність. У відношенні R атрибут Y функціонально залежить від атрибута X (X і Y можуть бути складеними) в тому і тільки в тому випадку, якщо кожному значенню X відповідає в точності одне значення Y: R.X (r) R.Y.

Повна функціональна залежність. Функціональна залежність R.X (r) R.Y називається повною, якщо атрибут Y не залежить функціонально від будь-якої точної підмножини Х.

Транзитивна функціональна залежність. Функціональна залежність R.X -> R.Y називається транзитивної, якщо існує такий атрибут Z, що є функціональні залежності R.X -> R.Z і R.Z -> R.Y і відсутня функціональна залежність R.Z -> R.X.

АТРИБУТИ

  • Неключовим атрибутом називається будь-який атрибут відносини, що не входить до складу первинного ключа.
  • Два або більше атрибута є взаємно незалежними, якщо жоден з цих атрибутів не є функціонально залежним від іншого.

ДРУГА НОРМАЛЬНА ФОРМА

Відношення R знаходиться в другій нормальній формі (2NF) в тому і тільки в тому випадку, коли знаходиться в 1NF, і кожен неключовий атрибут повністю залежить від первинного ключа.

ТРЕТЯ НОРМАЛЬНА ФОРМА

Відношення R знаходиться в третій нормальній формі (3NF) в тому і тільки в тому випадку, якщо знаходиться в 2NF і кожен неключовий атрибут нетранзитивно залежить від первинного ключа.

НОРМАЛЬНА ФОРМА БОЙСА-КОДДА

Детермінант - будь-який атрибут, від якого повністю функціонально залежить деякий інший атрибут.

Відношення R знаходиться в нормальній формі Бойса-Кодда (BCNF) в тому і тільки в тому випадку, якщо кожен детермінант є можливим ключем.

ЧЕТВЕРТА НОРМАЛЬНА ФОРМА

У відношенні R (A, B, C) існує багатозначна залежність R.A -> -> R.B в тому і тільки в тому випадку, якщо безліч значень B, яке відповідає парі значень A і C, залежить тільки від A і не залежить від С.

Відношення R знаходиться в четвертій нормальній формі (4NF) в тому і тільки в тому випадку, якщо в разі існування багатозначної залежності A -> -> B всі інші атрибути R функціонально залежать від A.

П’ЯТА НОРМАЛЬНА ФОРМА

Залежність з'єднання Відношення R (X, Y, ..., Z) задовольняє залежності з'єднання * (X, Y, ..., Z) в тому і тільки в тому випадку, коли R відновлюється без втрат шляхом з'єднання своїх проекцій на X, Y, ..., Z.

Відношення R знаходиться в п'ятій нормальній формі (нормальній формі проекції-з'єднання - PJ / NF) в тому і тільки в тому випадку, коли будь-яка залежність з'єднання в R випливає з існування деякого можливого ключа в R.


Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання

Вирівнювання тексту Вирівнювання тексту

Ширина абзацу Ширина абзацу

0