Предикат ЗМІННОЇ ВІДНОСИНИ І Предикатом БАЗИ ДАНИХ

Безумовно, що в загальному будь-яка конкретна змінна відносини може ставати обєктом дії багатьох обмежень Припустимо, що R – мінлива відносини У такому випадку предикатом змінної відносини R є результат застосування логічної операції І, або операції конюнкції до всіх обмежень, які поширюються на змінну відносини R (іншими словами, в яких вона згадується) Слід враховувати, що тут виникає певна небезпека суперечливого

тлумачення: як уже було сказано, кожне окреме обмеження саме є предикатом в повному розумінні цього поняття, але предикат змінної відносини для R – це конюнкція всіх окремих предикатів, які відносяться до R Наприклад, якщо для спрощення припустимо, що тільки шість обмежень, описаних у розділі 91, відносяться до бази даних постачальників і деталей (не рахуючи апріорних обмежень), то предикат змінної відносини для постачальників є конюнкція обмежень з номерами 1, 2, 4, 5 і 6, а предикат змінної відносини для поставок – конюнкція предикатів з номерами 5 і 6 Зверніть увагу, що ці два предиката змінної відносини в деякому сенсі перекриваються, оскільки вони мають деякі загальні складові ограніченія5

Тепер припустимо, що R – мінлива відносини, a RP – предикат змінної відносини для R Отже, безумовно, ні в якому разі не можна допускати, щоб змінна R набувала таке значення, що його підстановка в RP замість R (а також будь-яка інша

необхідна підстановка фактичних параметрів замість формальних параметрів, яка повинна бути виконана в RP), ставала причиною того, щоб предикат RP брав значення FALSE Отже, тепер ми можемо ввести золоте правило (Першу версію), яке має велике значення при аналізі огранічзній цілісності

Жодна операція оновлення не повинна призводити до присвоюванню будь-якої змінної відносини такого значення, яке викликає те, що предикат цієї змінної відносини отримує значення FALSE

Тепер припустимо, що D є базою данних6 і що D включає змінні відносини Rl, R2, .., Rn (і тільки ці змінні відносини) Припустимо, що предикатами змінної відносини для цих змінних відносини, відповідно, є RP1, RP2, .., RPn Тоді предикат бази даних для D, скажімо, DP, являє собою конюнкцію всіх таких предикатів змінної відносини

DP ≡ RP1 AND RP2 AND .. AND RPn

Нижче наведена розширена (більш загальна і фактично остаточна) версія золотого правила

Жодна операція оновлення не повинна призводити до присвоюванню будь-якій базі даних такого значення, яке викликає те, що предикат цієї бази даних отримує значення FALSE

5 У попередньому виданні даної книги було наведено визначення, що предикат змінної від носіння для змінної відносини R являє собою конюнкцію всіх обмежень змінної відносини, які відносяться до R (де, як зазначено в розділі 92, обмеженням змінної отноше ня називається обмеження, в якому згадується тільки одна змінна відносини) Але тепер, відповідно до [33], ми приймаємо визначення, що предикат змінної відносини R є конюнкція всіх обмежень, а не тільки обмежень змінної відносини, які відносяться до

R Автор приносить свої вибачення всім, хто вважає таку зміну в термінології причиною допол нительной плутанини

6 D, безумовно, також є змінною (див анотацію до [33]) і тому служить обєктом дей ствия обмежень цілісності

Безумовно, предикат бази даних приймає значення FALSE тоді і тільки тоді, коли щонайменше один з її складових предикатів змінної відносини приймає це значення А сам предикат змінної відносини приймає значення FALSE тоді і тільки тоді, коли щонайменше одна зі складових обмежень приймає це значення

Примітка Як вже було сказано, два різних предиката змінної відносини, RPi і RPj (i j), можуть мати деякі загальні складові обмеження З цього випливає, що одне і те ж обмеження може зявитися в предикате бази даних DP кілька разів З логічної точки зору такий стан справ не тягне за собою какихлибо утруднень, оскільки якщо з – обмеження, то вираз з AND з логічно еквівалентно просто с Отже, хоча, безумовно, в такій ситуації бажано, щоб система обчислювала обмеження з один, а не два рази, ця проблема ставиться до реалізації, а не до моделі

Джерело: Дейт К Дж, Введення в системи баз даних, 8-е видання: Пер з англ – М: Видавничий дім «Вільямс», 2005 – 1328 с: Ил – Парал тит англ

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*