В теорії баз даних, багатозначна залежність — повне обмеження між двома множинами атрибутів у відношенні.

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

Формальне визначення Формальне визначення наступне.

Нехай схема відношення і нехай і (підмножини). Багатозначна залежність

(що можна прочитати як багатовизначає ) виконується на якщо, в будь-якому допустимому віднощенні , для всіх пар кортежів і в таких, що , існують кортежі і в такі, що Простіше попередні умови можна виразити так: якщо ми позначимо кортеж із значеннями для рівними відповідно тоді, коли кортежі і існують в , кортежі і мають також існувати в .

Приклад

Уявімо такий приклад бази даних курсів, книжки рекомендовані для кожного курсу, викладачі, які читають курс: +ВикладанняКурс Книга Викладач МатАн Фіхтенгольц Паламарчук Д МатАн Пасічник Сироватка І МатАн Фіхтенгольц Сироватка І МатАн Пасічник Паламарчук Д МатАн Фіхтенгольц Негода В МатАн Пасічник Негода В Дискретка Нікольський Паламарчук Д Дискретка Нікольський Сироватка І

Через те, що викладачі прикріплені до курсу і книги прикріплені до курсу незалежні між собою, такий дизайн бази даних містить багатозначну залежність; якщо б нам довелось додати книгу до курсу МатАн, ми мали б по одному запису для кожного викладача цього кусу і навпаки, це і є повна залежність.

Скажемо формально, тут присутні дві багатозначні залежності: {курс}  {книга} і тотожно {курс}  {викладач}.

Бази даних з багатозначними залежностіми виявляють надлишковість. При нормалізації баз даних, четверта нормальна форма вимагає, щоб або кожна багатозначна залежність X  Y, була тривіальною залежністю, або для кожної нетривіальної багатозначної залежності X  Y, X — суперключ.

Оптимальним розв'язком проблеми буде декомпозиція відношення на два із заголовками {Курс , Книга} и {Курс , Викладач}. Така декомпозиція буде знаходитися в 4НФ. Допустимість декомпозиції встановлює теорема Феджина.

Цікаві властивості Якщо , тоді (див. лему Феджина) Якщо i , тоді Якщо i , тоді Наступні також залучають функціональну залежність: Якщо , тоді Якщо i , тоді

Застосування

Декомпозиція відношень Лема Фейджина У відношенні виконується багатозначна залежність тоді і тільки тоді, коли виконується .

Теорема Фейджина Хай дане відношення . Відношення дорівнює поєднанню його проєкцій і тоді і тільки тоді, коли для відношення виконується нетривіальна багатозначна залежність .

Ця теорема є суворішою версією теореми Хіта.

Визначення повне обмеження (): Це обмеження, що виражає що-небудь про всі атрибути в базі даних (на відміну від вбудованого обмеження ()). Те, що багатозначні залежності є повними обмеженнями випливає з його визначення, оскільки воно стверджує дещо про атрибути . кортеж-твірна залежність (): Залежність, що явно вимагає присутність певних кортежів у відношенні. Наприклад, розглянемо такі відношення: І таке обмеження цілісності: кожен студент, що бере участь в якомусь курсі отримує оцінку. Це приклад залежності включення (); позначимо її як Тотожною до нашого обмеження цілісності формулою реляційного числення буде: , що є прикладом кортеж-твірної залежності.

тривіальна багатозначна залежність 1 (): Багатозначна залежність, що залучає всі атрибути відношення, тобто . Тривіальна багатозначна залежність означає, що для кортежів і , кортежі і дорівнюють і .

тривіальна багатозначна залежність 2 Багатозначна залежність для якої .

Примітки

Посилання Multivalued dependencies and a new Normal form for Relational Databases (PDF) - Ronald Fagin, IBM Research Lab