Разделы презентаций


Сетевая модель данных

Содержание

СОДЕРЖАНИЕКраткая история Сетевая структура данныхОперации над сетевой структурой данныхОграничения целостности сетевой структуры данныхПреимущества и недостатки

Слайды и текст этой презентации

Слайд 1Лекция 4. Сетевая модель данных
Национальный авиационный университет
Факультет компьютерных наук
Кафедра инженерии

программного обеспечения

Лекция 4. Сетевая модель данныхНациональный авиационный университетФакультет компьютерных наукКафедра инженерии программного обеспечения

Слайд 2СОДЕРЖАНИЕ
Краткая история
Сетевая структура данных
Операции над сетевой структурой данных
Ограничения целостности сетевой структуры

данных
Преимущества и недостатки

СОДЕРЖАНИЕКраткая история Сетевая структура данныхОперации над сетевой структурой данныхОграничения целостности сетевой структуры данныхПреимущества и недостатки

Слайд 3История возникновения
Data Base Task Group (DBTG) CODASYL

Отчеты DBTG в

1971 и 1978 г.

Предложена сетевая модель данных, поддерживающая связи

типа m:n

Впервые специфицированы языки БД:
ЯОД схемы (концептуальный уровень)
ЯОД подсхемы (внешний уровень)
Язык определения хранимых данных – ЯОХД (внутренний уровень)
ЯМД

Реализация - Integrated Database Management System (IDMS) компании Cullinet Software, Inc.,
История возникновенияData Base Task Group (DBTG) CODASYL Отчеты DBTG в 1971 и 1978 г. Предложена сетевая модель

Слайд 4Поле и тип записи
Графическая нотация:

ПРЕПОДАВАТЕЛЬ (ФИО, Должность, Адрес)
Поле данных –

элементарное поименованное данное. Его

экземпляр представляет значение данного.
Тип записи – поименованная совокупность имен полей:


ПРЕПОДАВАТЕЛЬ


ФИО

Должность

Адрес


ПРЕПОДАВАТЕЛЬ


Иванов

профессор

Киев

Экземпляр типа записи – набор экземпляров полей:

Поле и тип записиГрафическая нотация:ПРЕПОДАВАТЕЛЬ (ФИО, Должность, Адрес)Поле данных – элементарное поименованное данное. Его

Слайд 5Ключи
Две или более записи одного типа могут быть идентичными в

сетевой базе данных с точки зрения значений их полей.
Ключ

базы данных (КБД) – это уникальный внутренний идентифи-катор записи. КБД автоматически присваивается записи при ее запоминании в БД и не изменяется при любых изменениях записи.

Ключ CALC – это внутренний идентификатор записи, который присваивается ей на основании значений определенных полей (элементов данных) записи.

КлючиДве или более записи одного типа могут быть идентичными в сетевой базе данных с точки зрения значений

Слайд 6Набор
Набор – это поименованная двухуровневая иерархическая связь типов записей. С

помощью композиции наборов строятся многоуровневые иерархические и сетевые структуры.
Владелец набора
Члены

набора

Экземпляр набора включает один экземпляр записи-владельца и любое количество экземпляров каждого типа записи-члена набора

Таким образом, набор описывает двухуровневую иерархическую связь типа один-ко-многим.

НаборНабор – это поименованная двухуровневая иерархическая связь типов записей. С помощью композиции наборов строятся многоуровневые иерархические и

Слайд 7Пример набора и его экземпляра

Пример набора и его экземпляра

Слайд 8Многоуровневая иерархия

Многоуровневая иерархия

Слайд 9Представление связей m:n

Представление связей m:n

Слайд 10Схема и экземпляр связи m:n
Преподаватели
Лекции
Дисциплины

Схема и экземпляр связи m:n ПреподавателиЛекцииДисциплины

Слайд 11Циклы и петли

Циклы и петли

Слайд 12 Варианты сетевой структуры данных

Варианты сетевой структуры данных

Слайд 13Приложение и СУБД



Рабочая область пользователя (РОП) содержит:
индикаторы текущего состояния,
записи,
статус ошибки.

Приложение и СУБДРабочая область пользователя (РОП) содержит:индикаторы текущего состояния,записи,статус ошибки.

Слайд 14Операции сетевой модели данных
Выборка данных:
FIND (поиск записи)
GET (выбора записи)

Манипулирование данными:
STORE

(запоминание нового экземпляра записи)
INSERT (вставка записи-члена в экземпляр

набора)
REMOVE (удаление записи-члена из экземпляра набора)
DELETE (удаление текущей записи)
MODIFY (модификация текущей записи)
Операции сетевой модели данныхВыборка данных:FIND (поиск записи)GET (выбора записи)Манипулирование данными:STORE  (запоминание нового экземпляра записи)INSERT  (вставка

Слайд 15Операции выбора данных
Прямой поиск. Находит требуемую запись и соответствующим образом

изменяет индикаторы текущего состояния. Это множество команд, которые находят конкретный

экземпляр записи. Позволяет :

найти запись по ключу
найти запись-член в экземпляре набора
просмотреть экземпляры набора, имеющие записи с
заданными значениями полей
найти владельца набора

FIND

Помещает найденную запись в РОП.

GET

Операции выбора данныхПрямой поиск. Находит требуемую запись и соответствующим образом изменяет индикаторы текущего состояния. Это множество команд,

Слайд 16Нахождение записи по ключу БД

FIND [имя-записи] RECORD BY DATABASE KEY

[переменная]
Синтаксис:
Пример:

X=10;
FIND Faculty RECORD BY DATABASE KEY X;
If Error_Status=0

then GET Faculty;
Else Print "Not Found !";
Нахождение записи по ключу БДFIND [имя-записи] RECORD BY DATABASE KEY [переменная]Синтаксис:Пример:X=10; FIND Faculty RECORD BY DATABASE KEY

Слайд 17Нахождение записи по ее полям
Чтобы найти запись по ее полям,

такие поля должны быть определены в схеме БД как, так

называемые, CALC-ключи.


FIND [имя-записи] RECORD BY CALC-KEY

Синтаксис:

Пример: Найти запись лекции, у которой поле LID равно «L3». (Поле LID определено как CALC-поле)


Lecture.LID = "L3";
FIND Lecture RECORD BY CALC-KEY;

Нахождение записи по ее полямЧтобы найти запись по ее полям, такие поля должны быть определены в схеме

Слайд 18Просмотр экземпляра набора
Экземпляр набора может быть представлен как «кольцо», состоящее

из экземпляра-владельца и экземпляров членов набора. Записи-члены набора упорядочены.

SUBJECT


LECTURE

Is taught at

Has


TEACHER

Просмотр экземпляра набораЭкземпляр набора может быть представлен как «кольцо», состоящее из экземпляра-владельца и экземпляров членов набора. Записи-члены

Слайд 19
Следующая запись-член в экземпляре набора

FIND NEXT [имя-записи] RECORD IN [имя-набора]

SET
Синтаксис:
Пример:

FIND NEXT Lecture RECORD IN Has SET;
Текущий экземпляр набора “Has”
L2

- текущая запись-член набора “Has”


L3 - следующая запись-член набора “Has”

Error_Status != 0 – достигнут конец записей-членов в экземпляре набора

Следующая запись-член в экземпляре набораFIND NEXT [имя-записи] RECORD IN [имя-набора] SETСинтаксис:Пример:FIND NEXT Lecture RECORD IN Has SET;Текущий

Слайд 20
Предыдущая запись в экземпляре набора

FIND PRIOR [имя-записи] RECORD IN [имя-набора]

SET
Синтаксис:
Пример:

FIND PRIOR Lecture RECORD IN Has SET;
L3 - текущая

запись-член набора “Has”

Текущий экземпляр набора “Has”


L2 - Предыдущая запись-член набора “Has”

Error_Status != 0 – достигнуто начало записей-членов в экземпляре набора

Is_taught_at

Предыдущая запись в экземпляре набораFIND PRIOR [имя-записи] RECORD IN [имя-набора] SETСинтаксис:Пример:FIND PRIOR Lecture RECORD IN Has SET;L3

Слайд 21Первая, последняя запись в экземпляре набора


FIND FIRST|LAST [имя-записи] RECORD IN

[имя-набора] SET
Синтаксис:
Пример:

FIND FIRST Lecture RECORD IN Has SET;
Текущий экземпляр набора

“Has”

L1 - первая запись-член набора “Has”

Error_Status != 0 – экземпляр набора не имеет записей-членов


L1 L2 L3 L4 L5

S1 S2 S3

T1 T2











Первая, последняя запись в экземпляре  набораFIND FIRST|LAST [имя-записи] RECORD IN [имя-набора] SETСинтаксис:Пример:FIND FIRST Lecture RECORD IN

Слайд 22

Нахождение записи-владельца текущего экземпляра набора

FIND OWNER OF [имя-набора] SET
Синтаксис:
Пример:

FIND

OWNER OF Has SET
Текущий экземпляр набора “Has”
L2 -

текущая запись-член набора “Has”

T1 - запись-владелец набора “Has”

Нахождение записи-владельца текущего  экземпляра набора FIND OWNER OF [имя-набора] SETСинтаксис:Пример:FIND OWNER OF Has SETТекущий экземпляр набора

Слайд 23Пример


X = ”T1”;
FIND Teacher RECORD BY DATABASE KEY X;
FIND

LAST Lecture RECORD IN Has SET;
FIND OWNER OF Is_taught_at SET;
FIND

LAST Lecture RECORD IN Is_taught_at SET;
FIND NEXT Lecture RECORD IN Has SET;
FIND OWNER OF Is_taught_at SET;






T1
L3
S2
L4
L5
S3

ПримерX = ”T1”; FIND Teacher RECORD BY DATABASE KEY X;FIND LAST Lecture RECORD IN Has SET;FIND OWNER

Слайд 24Запоминание экземпляра записи
Создать экземпляр записи в РОП;
Выполнить команду STORE.

STORE

[тип-записи] RECORD
Синтаксис:
Пример:

STORE Teacher RECORD
Вставка производится в экземпляр текущего набора

Запоминание экземпляра записиСоздать экземпляр записи в РОП; Выполнить команду STORE.STORE [тип-записи] RECORDСинтаксис:Пример:STORE Teacher RECORDВставка производится в экземпляр

Слайд 25Присоединение экземпляра записи из БД к экземпляру набора
Сделать требуемый экземпляр

набора текущим
Сделать присоединяемый экземпляр записи текущим
Выполнить команду INSERT

INSERT [тип-записи]

RECORD INTO [тип-набора] SET

Синтаксис:

Пример:


x=31; FIND Teacher RECORD BY DATABASE KEY x;
y=24; FIND Lecture RECORD BY DATABASE KEY y;
INSERT Lecture RECORD INTO Has SET;

Присоединение экземпляра записи из БД к  экземпляру набораСделать требуемый экземпляр набора текущим Сделать присоединяемый экземпляр записи

Слайд 26Отсоединение экземпляра записи от экземпляра набора
Сделать требуемый экземпляр записи текущим
Выполнить

команду REMOVE

REMOVE [тип-записи] RECORD FROM [тип-набора] SET
Синтаксис:
Пример: Удалить все

лекции у преподавателя с ID 31.


x=31; FIND Teacher RECORD BY DATABASE KEY x;
Loop: FIND NEXT Lecture RECORD IN Has SET;
IF Error_Status=0 THEN BEGIN; REMOVE Lecture RECORD FROM Teacher SET;
GO TO Loop;
END;

Отсоединение экземпляра записи от  экземпляра набораСделать требуемый экземпляр записи текущимВыполнить команду REMOVEREMOVE [тип-записи] RECORD FROM [тип-набора]

Слайд 27Изменение экземпляра записи
Команда MODIFY копирует значение записи из РОП в

текущий экземпляр записи БД.
Пример: Заменить у преподавателя с ключом

базы данных 31 имя на «Иванов».


x=31; FIND Teacher RECORD BY DATABASE KEY x;
GET Teacher RECORD;
Teacher.Name = ”Иванов”;
MODIFY RECORD;

Изменение экземпляра записиКоманда MODIFY копирует значение записи из РОП в  текущий экземпляр записи БД. Пример: Заменить

Слайд 28Удаление экземпляра записи из БД
Команда DELETE удаляет текущий экземпляр записи

из БД
Владелец набора может быть удален, когда в этом наборе

отсутствуют записи-члены


DELETE [тип-записи] RECORD

Синтаксис:

Пример: Удалить лекцию с ID 21.


x=21; FIND Lecture RECORD BY DATABASE KEY x;
DELETE Lecture RECORD;

Удаление экземпляра записи из БДКоманда DELETE удаляет текущий экземпляр записи из БДВладелец набора может быть удален, когда

Слайд 29Преимущества и недостатки
Сетевая модель в принципе обладает всеми теми же

преимуществами и недостатками, что и иерархическая модель данных.

Единственным принципиальным отличием

сетевой структуры по сравнению с иерархической является возможность непосредственно представлять связи типа многие-ко-многим.
Преимущества и недостаткиСетевая модель в принципе обладает всеми теми же  преимуществами и недостатками, что и иерархическая

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика