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