ого кортежу можна отримати, лише знаючи значення потенційного ключа для цього кортежу. p align="justify"> Традиційно один із потенційних ключів оголошується первинним ключем, решта - альтернативними ключами.
Потенційний ключ, що складається з одного атрибута, називається простим. Потенційний ключ, що складається з декількох атрибутів, називається складеним. p align="justify"> Відносини зв'язуються один з одним за допомогою зовнішніх ключів.
Зовнішній ключ відносини - це набір атрибутів відносини, що містить посилання на потенційний ключ іншого (або того ж самого) відносини. Відношення, що містить потенційний ключ, на який посилається деякий зовнішній ключ, називається батьківським ставленням. Відношення, що містить зовнішній ключ, називається дочірнім ставленням. p align="justify"> Зовнішній ключ не зобов'язаний мати властивість унікальності. Тому, одному кортежу батьківського ставлення може відповідати кілька кортежів дочірнього відносини. Такий тип зв'язку між відносинами називається "один-до-багатьох". Зв'язки типу "багато-до-багатьох" реалізуються використанням декількох відносин типу "один-до-багатьох". p align="justify"> У будь-якої реляційної базі даних повинні виконуватися два обмеження:
Цілісність сутностей
Цілісність зовнішніх ключів
Правило цілісності сутностей полягає в тому, що атрибути, що входять до складу деякого потенційного ключа не можуть брати null-значень. Правило цілісності зовнішніх ключів полягає в тому, що зовнішні ключі не повинні посилатися на відсутні в батьківському відношенні кортежі, тобто зовнішні ключі повинні бути коректні.
посилальної цілісності можуть порушити операції, які змінюють стан бази даних. Такими операціями є операції вставки, оновлення та видалення кортежів. p align="justify"> Для підтримки посилальної цілісності зазвичай використовуються дві основні стратегії: (ОБМЕЖИТИ) - не дозволяти виконання операції, що призводить до порушення посилальної цілісності. (каскадувати) - дозволити виконання необхідної операції, але внести каскадні зміни до інших відносини так , щоб не допустити порушення посилальної цілісності.
Додатковими стратегіями підтримки посилальної цілісності є: NULL (ВСТАНОВИТИ В NULL) - все некоректні значення зовнішніх ключів змінювати на null-значенія.DEFAULT (ВСТАНОВИТИ ПО УМОВЧАННЯМ) - все некоректні значення зовнішніх ключів змінювати на деяке значення, прийняте за замовчуванням.
У реальних СУБД можна також відмовитися від використання будь-якої стратегії підтримки посилальної цілісності: (ІГНОРУВАТИ) - виконувати операції, не звертаючи уваги на порушення посилальної цілісності.
Користувач може розробити свою унікальну стратегію підтримки посилальної цілісності.
Список використаної літератури
...