Построение информационной и даталогической моделей данных
Министерство образования, культуры и здравоохранения
Республики Казахстан
ВУЗ АВИЭК
ФАКУЛЬТЕТ ИНФОРМАТИКИ
КОНТРОЛЬНАЯ РАБОТА
По дисциплине «базы данных, базы знаний»
Тема:
«построение информационной и даталогической моделей данных»
Выполнил:
ст. гр. ПОС-96-1 з/o
Гринев М.В.
Принял:
Алматы 1999 г.
Цель работы: построение упрощенной информационной и даталогической моделей пункта
мобилизации и учета военнобязанных граждан.
Для организации учета
военнобязанных граждан необходимо располагать следующей информацией:
1.
Фамилия
2.
Имя
3.
Отчество
4.
Дата рождения
5.
Место работы или учебы
6.
Домашний адрес
7.
Пригодность к службе
8.
Уникальный, индивидуальный
номер
9.
Гражданская специальность
10.
Шифр воинской части
11.
Род войск
Все вышеперечисленные данные разбиты в две таблицы, имеющие одинаковое
поле «Уникальный, индивидуальный номер» для последующей статистической
обработки всех данных в обеих таблицах.
Ниже приводятся структуры таблиц и текст программы обработки, которая
обеспечивает ввод, изменение, удаление данных в таблицах.
Структура таблицы 1 (результат выполнения
команды list stru to struct1.txt)
Structure for database:
C:\WORK\SEMESTR7\BZ_BD\KONTR1.DBF
Number of data records: 15
Date of last update : 22.11.99
Field Field Name Type Width
Dec Index
1 SNAME Character
20
2 NAME Character
15
3 FNAME Character
15
4 DR Date
8
5 ADRES Character
25
6 M_RAB_UCH Character
15
7 GODNOST Logical
1
8 ID Numeric
3
** Total ** 103
структура таблицы 2 (результат выполнения команды list stru to struct11.txt)
Structure for database:
C:\WORK\SEMESTR7\BZ_BD\KONTR1_1.DBF
Number of data records: 25
Date of last update : 22.11.99
Field Field Name Type Width
Dec Index
1 ID Numeric
3
2 CPECIAL Character
18
3 ROD_VOISK Character
10
4 CHAST Character
10
** Total ** 42
Текст программы
обработки данных (содержание файла kontr1_1.prg)
set defa to c:\work\semestr7\bz_bd
set date german
set cursor off
set status off
set bell off
set deleted on
clear macros
on key
clear
use kontr1 in a
sele a
index on sname to sname.idx compa
use kontr1_1 in b
sele b
index on id to id.idx compa
sele a
brow nowait title '^T-del. ^N-add.
мобилизация-99 ^W-выход';
fields sname: H='фамилия':20,;
name: H='имя':15,;
fname: H='отчество':15,;
dr: H='дата рождения':8,;
adres: H='домашний адрес':25,;
m_rab_uch: H='место работы/учебы':15,;
godnost: H='пргодность':1,;
id: H='UIN':3
sele b
browse nowait title '^T-del. ^N-add.
распределение-99 ^W-выход';
fields id: H='UIN':3,;
cpecial: H='гражд.
специальность':18,;
rod_voisk: H='войска':10,;
chast: H='шифр части':10
Для облегчения поиска и простоты работы обе таблицы
(базы) проиндексированы по 1 полю первая по полю sname, вторая по полю id.
Таким образом при отображении данные упорядочиваются по указанным полям.