Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD / Slides / Russian / Лекция 04R-Сетевая модель данных.pps
Скачиваний:
28
Добавлен:
20.02.2016
Размер:
306.18 Кб
Скачать

Лекция 4. Сетевая модель данных

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

Синтаксис:

FIND FIRST|LAST [имя­записи] RECORD IN [имя­набора] SET

Пример:

FIND FIRST Lecture RECORD IN Has SET;

TEACHER

 

T1

 

T2

 

Has

 

 

 

 

 

LECTURE

L1

L2

L3

L4

L5

 

 

 

 

 

Is_taught_at

 

 

 

 

 

SUBJECT

S1

 

 

S2

S3

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

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

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

ФКН НАУ

21

ЛекцияНахождение4. Сетевая модельзаписиданных-владельца

текущего Синтаксис: экземпляра набора

FIND OWNER OF [имя­набора] SET

Пример:

FIND OWNER OF Has SET

TEACHER

T1

T2

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

 

Has

 

 

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

 

 

 

LECTURE

L1 L2

L3 L4

L5

Is_taught_at

 

 

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

 

 

 

SUBJECT

S1

S2

S3

ФКН НАУ

22

Лекция 4. Сетевая модель данных

Пример

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

 

TEACHER

 

 

 

 

T1

 

 

 

T2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Has

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L1

 

L2

 

L3

 

L4

 

L5

 

 

LECTURE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Is_ taught_at

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ФКН НАУ

 

 

 

 

 

S1

 

 

S2

S3

 

SUBJECT

 

 

 

 

23

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Лекция 4. Сетевая модель данных

Запоминание экземпляра записи

Создать экземпляр записи в РОП;

Выполнить команду STORE.

Синтаксис:

STORE [тип­записи] RECORD

Пример:

STORE Teacher RECORD

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

ФКН НАУ

24

Лекция 4. Сетевая модель данных

Присоединение экземпляра записи из БД к

экземпляру набора

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

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

Выполнить команду 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;

ФКН НАУ

25

Лекция 4. Сетевая модель данных

Отсоединение экземпляра записи от экземпляра набора

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

Выполнить команду 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;

ФКН НАУ

26

Лекция 4. Сетевая модель данных

Изменение экземпляра записи

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

Пример: Заменить у преподавателя с ключом базы данных 31 имя на «Иванов».

x=31; FIND Teacher RECORD BY DATABASE KEY x; GET Teacher RECORD;

Teacher.Name = ”Иванов”; MODIFY RECORD;

ФКН НАУ

27

Лекция 4. Сетевая модель данных

Удаление экземпляра записи из БД

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

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

Синтаксис:

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

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

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

ФКН НАУ

28

Лекция 4. Сетевая модель данных

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

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

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

ФКН НАУ

29