Реферат: Отношения /Укр./
За означенням суперключ одержується з ключа шляхом додовання до нього імен атрибутів, що не увійшли у ключ. Якщо у ці суперключі входять однакові ключі, тоді при перетині ми дійсно отримаємо ключ. Але можна перетинати суперключі, у які входять різні ключі. Тоді ключа ми не отримаємо. Наприклад, перетинаючи суперключі з таблиці 1 {НОМЕР, ЧАС-ВИЛЬОТУ} та {ПУНКТ-ВІДПРАВЛЕННЯ, ПУНКТ-ПРИЗНАЧЕННЯ, ЧАС-ВИЛЬОТУ, ЧАС-ПРИБУТТЯ} ми отримаємо {ЧАС-ВИЛЬОТУ}, який не є ключем.
V. Скільки максимально ключів і суперключів може мати дана схема відношення R{A1 A2 …An }?
Розв ’ язок
Теоретично ключем може бути:
кожен з атрибутів (тобто кількість ключів дорівнює n);
кожна пара атрибутів ();
кожна трійка атрибутів і т. д.
З приведеного списку при n > 3 найбільшою кількістю ключів є , якщо n парна і у іншому випадку. Суперключі будуть отримані шляхом додавання до ключа одного атрибута, два і т. д. Отже, максимальна кількість суперключів може бути +...+.
VI. Що можна сказати про відношення з ключем К=?
Розв ’ язок
Таке відношення має порожню множину атрибутів, тобто фактично такого відношення не існує.
VII. Нехай R = {B1 , B2 , …, Bm } ¾ключ схеми відношення R{A1 A2 …An }, r¾ відношення зі схемою R. Дано операцію CH (r; A1 = d1 , …, An = dn ; B1 = e1 , …, Bp = em ). У відношенні r нема кортежа з К-значенням <е1 е2 ...еm >, є кортеж <d1 d2 ...dn > і еі Î dom(Bi ). Чи законна дана операція?
Розв ’ язок
Так як значення даного запису не відповідають перерахованим вище помилкам, що виникають при операціях додавання (кортеж, що додається, не відповідає схемі відношення; деякі значення кортежа не належать відповідним доменам; кортеж співпадає по ключу з кортежем, що вже існує у відношенні) та знищення (кортеж відсутній у відношенні), то ця операція є законна.
VIII. Нехай S¾послідовність операцій оновлення, які потрібно застосувати до відношенняr. Якщо змінити порядок операцій в S, то чи обов’язково результат залишиться тим же самим при умові, що S містить
(а) тільки операції додавання;
(b) тільки операції знищення;
(c)операції додавання і знищення;
(d)операції додавання і зміни;
(e)операції зміни?
Розв ’ язок
(а) результат не зміниться, так як операції не пов’язані між собою;
(b) результат не зміниться, так як операції не пов’язані між собою;
(c)перестановка операцій може привести до помилки і до зміни результату, так як операція знищення може використовувати записи, ще не створені операцією додавання;
(d)перестановка операцій може привести до помилки і до зміни результату, так як операція зміни може використовувати записи, ще не створені операцією додавання;
(e)операції зміни можуть бути пов’язані певним чином між собою, тобто модифікувати одні і ті ж кортежі. Тоді перестановка даних операцій може привести до використання значень зміненого кортежу, хоча така заміна ще не відбулась. Тому перестановка може привести до виникнення помилки.