Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD-КН1.doc
Скачиваний:
18
Добавлен:
27.04.2019
Размер:
7.07 Mб
Скачать

2.3 Мережева модель даних

У мережевій моделі ми користуємося терміном логічний запис замість кортеж і формат логічного запису замість схема відношення. Назви компонентів у форматі логічного запису будемо називати полями. У контексті мережевої моделі поняття зв’язок є синонімом бінарного зв’язку “багато до одного”. Нехай існує зв’язок типу запису Т1 до типу запису Т2 вигляду “багато до одного”. Цей зв’язок можна зобразити записами змінної довжини з форматом Т2(Т1)* (знак * означає “повторити 0 або більше разів), тобто після кожного запису типу Т2 наводяться всі пов’язані з ним записи типу Т1. Кажуть, що між записами типу Т2 та Т1 існує групове відношенняієрархічне відношення між записами двох типів. Така організація називається мультисписком і передбачає у довільному записі один показчик для кожного зв’язку, у якому він бере участь.

Наприклад: Запис виду ШТАТ(ШОСЕ)* - тобто, які шосе перетинають даний штат. Повний формат запису для штатів АЛАБАМА, АЛЯСКА, АРІЗОНА буде мати вигляд: АЛАБАМА І10 І20 І59 І65 ! АЛЯСКА ! АРІЗОНА І8 І10 І17 І19 І40! []

Як бачимо запис починається з назви штату, потім прямує перелік шосе. Оскільки кожен штат перетинає різна кількість шосе, в результаті отримуємо файл з записами змінної довжини.

Запис типу Т2 називають Власником набору, а записи типу Т1 – членами набору. Кожен набір має свою назву. Між записами типу Т2 та Т1 можна побудувати безліч наборів. Наведений у прикладі набір має назву «Перетинає». На цій же множині записів можна побудувати набори «Починається», або «Закінчується». Тобто побудувати перелік шосе які беруть початок у певному штаті, або перелік шосе, що закінчуються у певному штаті.

У данному прикладі формат логічного запису складається з двох полів : ([Назва штату]|[Номер шосе]). Взагалі кожен запис типу Т2 та Т1 може мати власний перелік полів. Тоді формат логічного запису включає цей перелік. Наприклад: ([Назва штату], [Площа], [Кількість населення] | [Номер шосе], [ Довжина]).

Кожен запис, не залежно від типу, може входити у інше групове відношення, таким чином формується мережевий зв‘язок між записами.

Наприклад: Нехай логічний запис Місто (Шосе)* утворює набір «Проходить», а логічний запис Штат(Шосе)* – набір «Перетинає». Тоді очевидно, що один запис Шосе (або посилання на нього) може з‘явитися у двох групових відношеннях зразу. Уявімо, що створено ще один логічний запис Штат (Місто)* – отримаємо структуру, що відповідає двонаправленому графу.

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

У мережевій базі даних доступні такі операціі над даними: ДОДАТИ - внести запис у БД і, залежно від режиму включення, або включити його в групове відношення, де його оголошено підлеглим, або не включати ні в яке групове відношення. ВКЛЮЧИТИ У ГРУПОВЕ відношення - зв'язати існуючий підпорядкований запис із записом-власником. ЗАМІНИТИ ВЛАСНИКА – зв'язати існуючий підпорядкований запис з іншим записом-власником у тому ж груповому відношенні. ОНОВИТИ – змінити значення елементів попередньо витягнутого запису. ВИБРАТИ - витягти запис послідовно за значенням ключа, а також використовуючи групові відношення – від власника можна перейти до записів - членів, а від підпорядкованого запису до власника набору. ВИДАЛИТИ - прибрати з БД запис. Якщо цей запис є власником групового відношення, то аналізується клас членства підлеглих записів. Обов'язкові члени повинні бути попередньо виключені з групового відношення, фіксовані видалені разом з власником, необов'язкові залишаться в БД. Виключити з ГРУПОВОГО ВІДНОШЕННЯ – розірвати зв'язок між записом-власником і записом-членом. Обмеження цілісності забезпечується тільки додержанням цілісності по посиланнях (власник відношення - член відношення). В сучасних інформаційних системах мережеву модель підтримують ряд СКБД, наприклад, відома СКБД VISTA.

Розглянемо мережеву модель даних на прикладі тієї ж задачі про дисципліни, що розглядали для реляційної моделі даних (рис.2.2). Логічні записи будуть мати вигляд: Курс ( Спеціальність)*, Спеціальність (Дисципліна)* , Викладачі(Дисципліна)*.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]