Автоматизация учета студентов в ВУЗе

Рис.3.5 – Схема функциональных зависимостей таблиц

3.3.2 Описание нормальных форм

Докажем, что спроектированная БД нормализована до третей нормальной формы. Так как, по определению, если БД находится в третьей нормальной форме, то она находится и в первой и во второй нормальных формах, то докажем сперва, что д

анная БД находится в первой нормальной форме.

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

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

Повторяющимися являются поля, содержащие одинаковые по смыслу значения.

Так как разрабатываемая БД удовлетворяет этим ограничениям, то она находится в первой нормальной форме.

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

Итак, ограничениям, накладываемым второй нормальной формой, разрабатываемая БД удовлетворяет.

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

Все таблицы данной БД удовлетворяют этому условию, следовательно, БД находится в третьей нормальной форме.

3.3.3 Описание РМД

Объекты данной предметной области предоставляются в виде таблиц, свойства становятся атрибутами либо полями. Таблиц и полей с одинаковыми названиями быть не может. В каждой таблице выделяется свойство, которое является ключевым. В каждой таблице первичным ключом будет первичное поле (#). По правилу построения РМД, ключевое поле из таблицы, объект которой связан с другим объектом отношением , добавляется в таблицу, которое соответствует отношению «много» (). Таких связей получается 5. «Студент» связан с объектом «Группа» отношением , значит, первичным ключом у нас является код группы (# КГр) и подсоединяем его к таблице «Студент», где записываем внешний ключ (КГр #). Аналогичным образом мы проделываем остальные таблички:

· таблицу «Специальность», где первичный ключ (счетчик) (#КСп), соединяем стрелочкой с таблицей «Группа» (КСп # );

· «Факультет» (#КФ) соединяем с таблицей «Специальность», где внешним ключом будет (КФ#);

· таблицу «Общежитие» (первичный ключ(#КО)) соединяем с «Комната» (КО#);

· «Студент» (#КСт) соединяем с «Проживает» (КСт #).

Отношение преобразуется по следующему принципу: вводится дополнительная таблица, в которую ключевые поля таблиц, связанных отношением , также включаются поля, которые являются свойствами отношений между этими объектами.

В нашей схеме присутствует только одна такая связь, т.е. к таблице отношения «Проживает», где счетчиком является (#КПр), присоединяется внешний ключ (#КК(код комнаты)), внешний ключ (Ст#) и свойства отношения: дата заселения и дата выселения. На рис. 2 показана схема РМД.

Таким образом, после рассмотрения приведенных выше моделей данных для разработанной в пункте 3 схемы «объект-отношение» была выбрана реляционная модель, которая проста и понятна для пользователя и отвечает требованиям изучаемого курса.

4 Программная реализация СУБД

4.1 Описание таблиц

Таблица «Студент» – справочник студентов.

Код студента – код студента, тип счетчик, первичный ключ, содержит уникальное значения без повторений.

ФИО – фамилия, имя и отчество студента, тип текстовый, размер 50 символов, поле обязательное, индексированное, допускаются совпадения.

№ зачетки – содержит номер зачетки, тип текстовый, размер 10 символов, содержит маску ввода: 00\/000, условие на значение:>0, если вводится неправильное значение, выводится сообщение об ошибке ”Некорректный ввод”; поле обязательное, индексированное, совпадения не допускаются.

Дата рождения – содержит дату рождения, тип дата/время, имеет краткий формат даты, маска ввода 00.00.0000;0;_, условие на вводимое значение <Now()-365*16 (т.е. студенту должно быть не меньше 16 лет), если вводится неправильное значение, выводится сообщение об ошибке, обязательное поле, индексированное, допускаются повторения.

Домашний адрес – содержит адрес проживания студента, тип текстовый, размер 50 символов, поле обязательное, индексированное, допускаются совпадения.

Контактный телефон - содержит номер телефона, тип текстовый, размер 20 символов, содержит маску ввода: 0\-000\-000\-00\-00;;_ . Поле необязательное, индексированное, не допускаются совпадения.

Пол - содержит пол студента, тип текстовый, размер-10 символов, обязательное поле, индексированное поле, совпадения допускаются, поле со списком, тип источника строк- список значений, источник строк – мужской; женский.

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

ФИО матери - фамилия, имя, отчество матери студента, тип текстовый, размер 50 символов, поле обязательное, индексированное, допускаются совпадения.

ФИО отца - фамилия, имя, отчество отца студента, тип текстовый, размер 50 символов, поле обязательное, индексированное, допускаются совпадения.

Контактная информация отца - содержит место работы, должность и контактный телефон, тип текстовый, размер 100 символов, обязательное поле, индексированное поле, совпадения допускаются.

Контактная информация матери - содержит место работы, должность и контактный телефон, тип текстовый, размер 100 символов, обязательное поле, индексированное поле, совпадения допускаются.

Группа- код группы, тип числовой, размер поля - длинное целое, обязательное поле, поле со списком, тип источника - таблица или запрос: SELECT Группа.[Код группы], Группа.[Название группы] FROM Группа ORDER BY [Название группы];.

Таблица «Группа» содержит информацию о группах, в которых учатся студенты.

Код группы - тип счетчик, первичный ключ, содержит уникальные значения без повторений.

Название группы - тип текстовый, размер-10 символов, обязательное и индексированное поле, совпадения не допускаются.

Год набора - тип дата/время, размер 20 символов, маска ввода- 00.00.0000;0;_, обязательное и индексированное поле, совпадения допускаются, условие назначения: >Date()-(5*365). Если вводится неправильное значение, то выводится сообщение об ошибке.

Страница:  1  2  3  4  5  6  7 


Другие рефераты на тему «Программирование, компьютеры и кибернетика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы