Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по ИС.docx
Скачиваний:
26
Добавлен:
16.11.2019
Размер:
330.27 Кб
Скачать

3.4.2.4. Справочники

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

Пусть исходное дерево имеет вид:

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

Описание сотрудников и кафедр располагается в таблицах:

сотрудник кафедра

п/п

ФИО

ученая степень

научное звание

контактные данные

п/п

название

шифр в вузе

1

Иванов И.И.

к.т.н.

доцент

234567

1

СУиВТ

239

2

Петров П.П.

к.т.н.

нет

456789

2

ТАМ

145

3

Сидоров С.С.

нет

нет

123456

4

Яковлев Я.Я.

д.т.н.

профессор

345678

Сформируем для дерева справочник - это файл, в котором в качестве полей, идентифицирующих записи основных файлов, выступают соответствующие первичные ключи (поле элемент дерева):

п/п

элемент дерева

ссылки на родительскую запись6

ссылки на порожденную запись7

1

СУиВТ

-

3, 5

2

ТАМ

-

4, 6

3

Иванов И.И.

1

-

4

Петров П.П.

2

-

5

Сидоров С.С.

1

-

6

Яковлев Я.Я.

2

-

Пусть надо определить, каков шифр кафедры, на которой работает сотрудник по фамилии и инициалам Сидоров С.С., т.е. Кдоступ=<ФИО=Сидоров С.С.>. Задача решается следующим образом:

  1. по справочнику находят требуемого сотрудника – это запись с номером 5;

  2. выбирают значение поля ссылки на родительскую запись – это 1;

  3. обращаются к строке (записи) с номером 1 и определяют значение поля элемент дерева – это СУиВТ;

  4. по таблице (файлу) кафедра ищется строка (запись) с ключом СУиВТ – это запись с номером 1;

  5. выводится значение поля шифр в вузе – это 239. Алгоритм заканчивает работу.

Пусть надо определить контактные данные сотрудников кафедры СУиВТ, т.е. Кдоступ = <название (кафедры)=СУиВТ>. Задача решается следующим образом:

  1. по справочнику находят требуемую кафедру – это запись с номером 1;

  2. выбирают значение поля ссылки на порожденную запись – это {3,5};

  3. обращаются к строке (записи) с номером 3 и определяют значение поля элемент дерева – это Иванов И.И.;

  4. по таблице (файлу) сотрудник ищется строка (запись) с ключом Иванов И.И. – это запись с номером 1;

  5. выводится значение поля контактные данные – это 234567;

  6. обращаются к строке (записи) с номером 5 справочника и определяют значение поля элемент дерева – это Сидоров С.С.;

  7. по таблице (файлу) сотрудник ищется строка (запись) с ключом Сидоров С.С. – это запись с номером 3;

  8. выводится значение поля контактные данные – это 123456. Алгоритм заканчивает работу.