Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекція 3 Реляційні БД.doc
Скачиваний:
24
Добавлен:
19.11.2019
Размер:
2.52 Mб
Скачать

3.5.3. Відновлення представлень

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

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

  • Відновлення не допускаються в будь-яких представленнях, визначених на базі декількох базових відношень.

  • Відновлення не допускаються в будь-яких представленнях, що включають виконання операцій узагальнення чи групування.

Представлення прийнято поділяти на наступні класи: теоретично неоновлювані, теоретично обновлювані і частково обновлювані.

3.6. Коли скбд можна вважати Реляційної

Як уже згадувалося в розділі 3.1, існує кілька сотень реляційних СКБД для мейнфреймів і персональних комп'ютерів. На жаль, деякі з них, строго говорячи, не відповідають визначенню реляційної моделі. Зокрема деякі постачальники традиційних варіантів СКБД, заснованих на мережній і ієрархічній моделях даних, реалізують у своїх продуктах тільки деякі риси реляційних систем, щоб мати підстави заявити про їх приналежність до реляційних систем. Заклопотаний тим, що потенційні можливості і зміст реляційного підходу спотворюються, Кодд (Codd, 1985) запропонував 12 правил визначення реляційних систем (а точніше 13, якщо враховувати фундаментальне правило 0). Ці правила утворюють свого роду еталон, по якому можна визначити приналежність СКБД до розряду дійсно реляційних систем.

Протягом багатьох років запропоновані Коддом правила викликали масу дорікань у зацікавлених осіб і фахівців. Одні рахували їх не більш ніж чисто теоретичними вправами. Інші заявили, що їх продукти вже задовольняють багатьом цим правилам, якщо не усім. Ця дискусія сприяла росту розуміння користувачами і співтовариством розроблювачів СКБД найважливіших властивостей дійсно реляційних СКБД. Щоб підкреслити особливе значення цих правил, ми розділили їх на п'ять функціональних груп.

  1. Фундаментальні правила.

  2. Структурні правила.

  3. Правила цілісності.

  4. Правила керування даними.

  5. Правила незалежності від даних.

Фундаментальні правила (правила 0 і 12)

Образно кажучи, правила 0 і 12 є "лакмусовим папірцем", що дозволяє визначити приналежність системи до реляційних СКБД. Якщо система не задовольняє цим правилам, то її не слід вважати реляційною.

Правило 0 - фундаментальне правило

Будь-яка система, що рекламується чи представляється як реляційна СКБД, повинна бути здатна керувати базами даних винятково за допомогою її реляційних функцій.

Це правило означає, що СКБД не повинні прибігати до будь-яких не реляційних операцій для виконання таких видів робіт, як визначення даних і маніпулювання ними.

Правило 12 - правило заборони обхідних шляхів

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

Це правило гарантує, що всі спроби доступу до бази даних контролюються СКБД таким чином, що цілісність бази даних не може бути порушена без відома користувача чи АБД. Це, однак, не виключає можливостей використання мови низького рівня з інтерфейсом послідовної порядкової обробки.