Таблица 3.1
Поля служебной карточки
Поле
Ограничение
Личный номер
А – ххх ххх; уникален
9.Какими иностранными языками владеете
Хорошо – читает и может объясняться; владеет свободно. Слабо – читает и переводит со словарём.
Личное дело №
уникален
10.Какими языками народностей РФ владеете
Хорошо, слабо.
1.ФИО
нет
11.Участие в войнах и других боевых действиях
2.Год, месяц и число рождения
12.Ранения и контузии
3.Место рождения
Если посёлок, село, указывается область.
13.Был ли в плену, окружении
4.Гражданство
Российское
14.Госдарственные награды
5.Национальность
Территория РФ
15.Семейное положение
6.Образование (специальность, учебное заведение, год окончания)
16.Адрес местожительства семьи
7.Специальность по образованию
17.Трудовая деятельность
Работа в гражданских организациях, учреждениях и на предприятиях.
8.Присвоено специальное (воинское) звание (приказ и дата)
18.Служба в ВС РФ, Военно-Морском Флоте, в войсках и органах ФСК и МВД
Служба в ВС и федеральных органах исполнительной власти.
Из трёх подходов моделирования выбирается реляционная модель. Данные о сотрудниках можно представить в виде таблицы, в которой каждому виду данных соответствует свой столбец, а каждому конкретному сотруднику – строка. Каждая строка этой таблицы (отношения) называется записью, а её отдельный элемент, отвечающий тому или иному столбцу, - полем. Если представить себе служебную карточку в виде таблицы, то можно обнаружить ряд недостатков:
Во-первых, некоторые поля являются достаточно сложными и включают в себя данные, которые можно (и нужно) разбить на более мелкие компоненты (это поля, в которые входят фамилия, имя, отчество, дата рождения, образование и др.)
Во-вторых, для удобства работы с базой данных необходимо разделить исходную таблицу «Служебная карточка» на совокупность нескольких таблиц. Например, таблица «Персоналии», таблица «Образование», «Иностранные языки» и т.п.
Такие действия по представлению данных в теории и практике создания БД называется нормализацией.
Нормализация - это обратимый пошаговый процесс декомпозиции исходных таблиц в более простые, избавленные от нежелательных функциональных зависимостей, порождающих проблему контроля избыточности данных.
После исправления недостатков получаем следующую совокупность таблиц:
· Таблица 1 «Персоналии» - личный номер, личное дело №, фамилия, имя, отчество, год рождения, месяц рождения, день рождения, место рождения, национальность, семейное положение; логические поля – владеет иностранными языками, участвовал в боевых действиях, имеет награды, был в плену, имеет детей, дело находится в архиве.
· Таблица 2 «Образование» - личное дело №, образование, специальность по образованию, учебное заведение, год окончания.
· Таблица 3 «Иностранные языки, языки народностей РФ» - личный номер, владеет хорошо, владеет плохо.
· Таблица 4 «Боевые действия» - личный номер, когда, где, количество дней, ранения и контузии.
· Таблица 5 «Награды» - личное дело №, дата награждения, наименование ордена, медали.
· Таблица 6 «Плен» - личный номер, при каких обстоятельствах, где, сколько.
· Таблица 7 «Семья» - личный номер, ФИО жены, мужа, год рождения жены, мужа, адрес местожительства семьи, № дома, № квартиры.
· Таблица 8 «Дети» - личный номер, ФИО детей, годы рождения.
· Таблица 9 «Звание» - личный номер, звание, кем издан приказ, № приказа, дата приказа.
· Таблица 10 «Трудовая деятельность» - номер трудовой книжки, дата поступления, дата ухода, наименование учреждения, адрес, должность.
· Таблица 11 «Служба» - номер трудовой книжки, личный номер, дата вступления, дата ухода, должность, с указанием органа, части, местонахождение, наименование органа, издавшего приказ, № приказа, дата.
Поля «личный номер», «личное дело №», «номер трудовой книжки» повторяются не случайно, они являются ключевыми полями:
· Поле «личный номер» является первичным ключом в таблицах №1 и №7, вторичным ключом в таблицах №3, 4, 6, 8, 9, 11.
· Поле «личное дело №» первичный ключ в таблице №1, вторичный ключ в таблицах №2, 5.
· Поле «номер трудовой книжки» первичный ключ в таблице №11, вторичный в таблице №10.
Ключевое поле позволяет однозначно идентифицировать запись в базе данных.
3.2 Составление схемы баз данных
Выделенные объект и его атрибуты необходимо описать в терминах СУБД Access. В Access данным соответствует определённый тип:
· числовой;
· логический;
· текстовый;
· поле дата/время;
· денежный;
· поле MEMO и другие.
Приведём сортировку полей 11 таблиц по типу данных (табл. 3.2).
Таблица 3.2
Сортировка полей таблиц по типу данных
Текстовые поля
Числовые поля
Логические поля/поле дата/время
Таблица «Персоналии»
Таблица «Образование»
ФИО; месяц рождения; место рождения; национальность; семейное положение
Личный номер; личное дело №; год рождения; день рождения
Владеет ин. языками, языками народностей РФ; участвовал в боевых действиях; был в плену; имеет награды; имеет детей; дело находится в архиве
Образование; специальность по образованию; учебное заведение
Личное дело №; год окончания
Таблица «Иностранные языки, языки народностей РФ»
Таблица «Боевые действия»
Владеет хорошо; владеет плохо
Когда; где; ранения и контузии
Личный номер; сколько времени находился
Таблица «Награды»
Таблица «Плен»
Наименование ордена, медали
Дата награждения
При каких обстоятельствах; где?
Личный номер; сколько?
Таблицы «Семья», «Дети»
Таблица «Служба»
ФИО жены, мужа; адрес местожительства семьи; ФИО детей
Личный номер; год рождения жены, мужа; № дома; № квартиры; годы рождения детей
Должность с указанием органа, части; местонахождение; наименование органа, издавшего приказа
№ трудовой книжки; личный номер; № приказа
Дата вступления в должность; дата ухода; дата приказа
Таблица «Трудовая деятельность»
Таблица «Звание»
Наименование учреждения; адрес; должность
№ трудовой книжки
Дата поступления; дата ухода
Звание; кем издан приказ
Личный номер; номер приказа
Дата приказа
Страницы: 1, 2, 3, 4, 5, 6