2. Посилальна цілісність: якщо дві таблиці зв'язані між собою, те зовнішній ключ таблиці повинен містити тільки ті значення, які вже є серед значень ключа, по якому здійснюється зв'язок.
Значения NULL и поддержка ссылочной целостности
Значения NULL используются для обозначения факта отсутствия информации. Например: дата рождения человека может быть неизвестна. При этом следует учесть, что значения NULL отличаются от числового значения 0 или символьных пробелов. Значение NULL вообще не является реальным значением. Для данного атрибута может быть разрешено или запрещено содержать значения NULL.
Возможность присутствия в отношении значений NULL приводит к необходимости формирования правила целостности объектов. Целостность объектов – ни один элемент первичного ключа не может содержать значения NULL.
Правило ссылочной целостности также должно быть расширено с учетом возможности присутствия значений NULL.
Возможность присутствия значений NULL приводит к возникновению ряда трудноразрешимых проблем и осуждается некоторыми исследователями (например, К. Дж. Дейтом в книге [1]).
Правила внешних ключей
Для того, чтобы избежать некорректных состояний для каждого внешнего ключа необходимо установить правила, на основании которых СУБД будет действовать при попытке удалить объект ссылки внешнего ключа или обновить потенциальный ключ, на который ссылается внешний ключ. Для каждого из этих случаев можно предусмотреть по меньшей мере две возможности.
1. При попытке удалить объект ссылки внешнего ключа:
1.1. Ограничить – приостановить операцию удаления, до момента, когда не будет существовать ссылающихся объектов.
1.2. Каскадировать – каскадировать операцию удаления, удалив соответствующие ссылающиеся объекты.
2. При попытке обновить потенциальный ключ, на который ссылается внешний ключ:
2.1. Ограничить – приостановить операцию обновления, до момента, когда не будет существовать ссылающихся объектов.
2.2. Каскадировать – каскадировать операцию обновления, обновив значение внешнего ключа в соответствующих ссылающихся объектах.
При каскадных обновлениях удавлениях и обновлениях следует учесть возможность наличия ссылочных циклов, которые могут привести к усложнению процедуры модификации БД.
Обмеження категорийної й посилальної цілісності повинні підтримуватися СУБД.
2. Етапи проектування бази даних




3. Концептуальна модель ПО (Інфологічна модель)
Предметна область, семантика предметної області.
Поняття “предметна область” є базисним поняттям в теорії баз даних і тому не має строгого визначення. Щоб з'ясувати його зміст, звернемося до понять “об'єкт” і “предмет”.
Об'єкт – це те, що існує поза нами і незалежно від нашої свідомості, явищ зовнішнього світу і матеріальної дійсності. Об'єкти потенційно мають величезну кількість властивостей і знаходяться в потенційно нескінченному числі взаємозв'язків між собою. Однак серед усієї безлічі властивостей і взаємозв'язків між об'єктами має сенс виділяти лише істотні, важливі з погляду споживача інформації.
Предмет – це об'єкт, що став носієм визначеної сукупності властивостей, входить у різні взаємини та становить інтерес для споживачів інформації. Той самий об'єкт може прийматися різними системами як різні предмети. Таким чином, предмет – це модель реального об'єкта.
Сукупність об'єктів, інформація про які становить інтерес для користувачів, утворює об'єктне ядро предметної області.
Поняття “предметна область” відповідає точці зору споживача інформації на об'єктне ядро, при якій виділяються тільки ті властивості об'єктів і взаємозв'язки між ними, що представляють визначену прагматичну цінність і повинні фіксуватися в базі даних. Таким чином, предметна область являє собою абстрактну картину реальної дійсності, певна частина якої фіксується як модель фрагмента дійсності.
У кожен момент часу предметна область знаходиться в одному зі станів, що характеризується сукупністю об'єктів і їхніх взаємозв'язків. Якщо об'єкти утворять об'єктне ядро, то сукупність взаємозв'язків не відбиває структуру фрагмента дійсності. З часом одні об'єкти зникають, інші з'являються, змінюються властивості і взаємозв'язки. Проте нові стани, що виникають з часом, вважаються станами однієї і тієї ж предметної області. Таким чином, предметну область доцільно розглядати як систему, що переживає свою історію, яка складається з певної послідовності станів.
Після завдання простору станів, можна розглядати в ньому визначені траєкторії чи послідовності станів s0,s1,...,st, у яких знаходиться предметна область у моменти часу 0,1,...,t. Члени такої послідовності не можуть бути зовсім довільними, оскільки стан s звичайно яким-небудь чином пов'язан із попередніми станами s0, s1,...,st-1. Тому предметну область можна визначити як клас усіх дійсно можливих послідовностей станів. Такі послідовності називаються траєкторіями предметної області. Сукупність усіх загальних властивостей траєкторій називається семантикою предметної області.
Концептуальні засоби описання предметної області
Оскільки об'єктне ядро довільної предметної області потенційно містить нескінченне число об'єктів, що знаходяться в потенційно нескінченній безлічі взаємозв'язків, то стає ясним, що прямий підхід до опису предметної області через опис всіх об'єктів і взаємозв'язків між ними не може дати бажаного результату.
Очевидною альтернативою в цій ситуації є підхід до опису предметної області, що фіксує тільки те загальне, що є незмінним і характеризує ситуацію в будь-який момент часу, чи, говорячи іншими словами, що відбиває семантику предметної області.
Звідси випливає, що необхідні спеціальні засоби опису предметної області, що були б застосовні до будь-якої з областей, досить просто інтерпретувалися в конкретному фрагменті зовнішнього світу й одночасно були точними, структурованими і доступними для огляду (кінцевими).
Пристосованість зазначених засобів для опису будь-якої предметної області означає, що вони зобов'язані бути досить універсальними. Для забезпечення універсальності необхідна висока спільність, абстрактність системи базисних мета визначень і правил породження нових понять, що допускають інтерпретацію в будь-якій предметній області. В зв’язку із своєю абстрактністю засобу опису предметної області називаються концептуальними. Тому в теорії баз даних прийнято говорити про концептуальне чи інфологічне моделювання предметної області. Результатом процесу моделювання є концептуальна або інфологічна модель (схема) предметної області.
Обобщение представлений всех пользователей о данных называется концептуальной моделью (схемой) БД. Концептуальная модель представляет информационное описание предметной области с учетом логических взаимосвязей, поэтому её еще называют инфологической (информационно-логической) моделью. В модели отсутствуют какие-либо понятия, связанные с ЭВМ, памятью ЭВМ, способами размещения данных в памяти ЭВМ и, по сути, это модель только предметной области.
Побудова концептуальної (інфологічної моделі ПО (ІМПО))
Під інфологічною моделлю розуміють опис предметної галузі, який виконав з використанням спеціальних язикових засобів, що не залежать від використовуваних надалі програмних засобів. До побудови інфологічної моделі необхідно детально вивчити предметну галузь і адекватно відобразити її в моделі.
Інфологічна модель ПО (концептуальна модель ПО) – опис ПО, виконане формальною мовою, незалежному від машини й СУБД.
При побудові ИМПО використовуються наступні поняття:
1. Сутність
2. Атрибут
3. Зв'язок
4. Клас приналежності
5. Тип зв'язку
ІМПО – опис ПО, виконане без орієнтації на використовувані надалі програмні й технічні засоби.
ІМПО - деяка абстракція ПО. Для відображення в ІМПО відбираються тільки ті фрагменти ПО, які необхідно використовувати при формуванні відповідей на інформаційні потреби користувачів.
Звичайно ІМПО зображують графічно у вигляді діаграми “Об'єкт-Властивість-Відношення”. При аналізі ПО виділяють класи об'єктів.
Клас об'єктів – сукупність об'єктів, що володіють однаковим набором властивостей.
В ІМПО кожний клас об'єктів представлений ім'ям цього класу – граматичний оборот іменника множини. Приклад: “Автомобілі”, “Співробітники”.
Клас об'єктів відображається в ІМПО сутністю. Кожна сутність характеризується переліком властивостей (атрибутів). Екземпляри об'єктів одного класу мають різні значення цих властивостей.
Сутність зображується у вигляді прямокутника. Атрибути сутності записуються за допомогою виносних ліній.
Статичні властивості (атрибути) сутності позначають символом S над стрілкою відповідній властивості. Приклад: Ідентифікаційний код людини постійний, тобто цей атрибут сутності люди статичне.
Динамічні властивості позначають латинською буквою D. Приклад: Ціна на товар міняється, тобто цей атрибут сутності. Товари динамічні.
Одиничні властивості з'єднуються з виносной лінією за допомогою одинарної стрілки. Множинні властивості вказуються подвійною стрілкою (“Постачальники”).
Умовні властивості позначаються штриховою стрілкою, тобто атрибут не обов'язковий для заповнення.
Крім сутностей на ІМПО, відображаються зв'язки між ними. Зв'язок відображається у вигляді ромба, у який уписане ім'я зв'язку.
Кожний зв'язок характеризується ім'ям, типом, клас приналежності й напрямком. Ім'я зв'язку повинне бути дієслівним оборотом.
Приклад: “належить”.
Тип зв'язку характеризує кількість екземплярів об'єкта кожного класу, що беруть участь у зв'язку.
Розрізняють 4 типи зв'язку:
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 |


