Автор работы: Пользователь скрыл имя, 09 Сентября 2015 в 00:10, курсовая работа
Цель: разработать автоматизированную базу данных с использованием MS Access для решения задач заказчика.
Задачи:
Исследовать интересующую нас предметную область
Сведения из каждого источника должны сохраняться в отдельной таблице
Таблицы «Обучающиеся» и «Кружки» имеют связь (М: М), соотнося атрибуты в сущностях ОБУЧАЮЩИЕСЯ и КРУЖКИ с соответствующими атрибутами, в сущности, ДОГОВОР, мы так же можем объединить их через две связи один ко многим (1:М), получаем необходимую нам связь многие ко многим (М: М). Для объединения таблиц нам требуется добавить внешний ключ (КодКр) в таблицу «Договор».
Таблицы «Вид соревнования» и «Обучающиеся» имеют связь (М: М), так как в реляционной модели мы не можем определять прямую связь «многие ко многим» между двумя таблицами, построим дополнительную таблицу связи, которую назовем РЕЗУЛЬТАТЫ ОЛИМПИАДЫ. Соотнося атрибуты в сущностях ВИДЫ СОРЕВНОВАНИЯ и ОБУЧАЮЩИЕСЯ с соответствующими атрибутами, в сущности, РЕЗУЛЬТАТЫ ОЛИМПИАДЫ через две связи один ко многим (1:М), получаем необходимую нам связь многие ко многим (М: М). Для объединения таблиц нам требуется добавить внешние ключи (КодСоревн и НомПол) в таблицу «Результаты олимпиады».
Таблицы «Кружки» и «Инвентарь» имеют связь (М: М), так как в реляционной модели мы не можем определять прямую связь «многие ко многим» между двумя таблицами, построим дополнительную таблицу связи, которую назовем ИНВЕНТАРИЗАЦИЯ. Соотнося атрибуты в сущностях КРУЖКИ и ИНВЕНТАРЬ с соответствующими атрибутами, в сущности, ИНВЕНТАРИЗАЦИЯ через две связи один ко многим (1:М), получаем необходимую нам связь многие ко многим (М: М). Для объединения таблиц нам требуется добавить внешние ключи (КодИнв и КодКр) в таблицу «Инвентаризация».
Таблица «Вид соревнования» с таблицей «Олимпиада» имеют связь 1:М (один ко многим), следовательно, требуется добавить внешний ключ в таблицу «Вид соревнования» (КодПровед)
Схема данных имеет вид:
Рисунок 2.2 Схема данных
Рассмотрев ER-диаграмму и определив, какие таблицы можно выделить из сущностей и отношений между ними.
В моей предметной области используются следующие таблицы:
Преподаватели, Кружки, Договора.
Ключи в таблицах соответствуют ключам в соответствующих сущностях.
Полагаясь на выше сказанное, получаем таблицы со следующими полями:
Преподаватели(#НомПасп, ФамПр, ИмяПр, ДатаРождПр, Должность, Стаж, Оклад, КодКр)
Кружки(#КодКр, ВидДеят, Цена)
Договор(#НомДог, НомПасп, НомПол, КодКр, ДатаЗакл, СрокДейст, ДатаРаст)
При проектировании реляционной БД необходимо предусмотреть создание наиболее эффективной структуры данных. После определения таблиц, полей и связей между таблицами следует посмотреть на проектируемую базу данных в целом и проанализировать ее, используя правила нормализации, с целью:
В хорошо спроектированной базе данных избыточность данных исключается, вероятность сохранения противоречивых данных минимизируется, а также упрощается процедура их обработки и обновления.
В логическом проектировании наиболее эффективна структура данных, представленная в виде Нормальных форм (НФ). Существуют несколько видов нормальных форм:
Практически используются только первые три. Рассмотрим процесс приведения к 1НФ, 2НФ и 3НФ.
Рассмотрим универсальную таблицу, в которую включаются все атрибуты.
«ДЮСШ» (НомПол, ФамОб, ИмяОб, НомПасп, ФамПр, ИмяПр, КодКр, ВидДеят, Цена, НомДома, ПлощДома, НомЗал, ПлощЗал, НомДог, КодИнв, НазвИнв, СтоимИнв, Количество, КодСоревн, ПризФонд, КодПровед, Проведение,Место).
Ключевое поле – это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице. Если для таблицы определены ключевые поля, то Microsoft Access предотвращает дублирование или ввод пустых значений в ключевое поле. Ключевые поля используются для быстрого поиска и связи данных из разных таблиц при помощи запросов, форм и отчетов.
Ключи (НомПасп, НомДог, КодИнв, КодСоревн).
Будем говорить, что отношение находится во 2ой нормальной форме, если оно находится в 1ой нормальной форме и в ней отсутствуют атрибуты, зависящие только от части ключа.
Будем говорить, что отношение находится в 3ей нормальной форме, если оно находится во второй нормальной форме и из нее удалены атрибуты, зависящие от других атрибутов, не входящих в составной ключ.
Будем называть 2 поля таблицы X и Y находящимися в функциональной зависимости, если поле Y в любой момент времени принимает ровно одно значение в зависимости от поля значения X.
Разобьем функциональные зависимости так, чтобы в одной таблице находились ключ и от него зависящие атрибуты.
НомПасп à (ФамПр, ИмяПр). – 3НФ
НомПол à (ФамОб, ИмяОб). – 3НФ
НомДог à (НомПасп, НомПол, КодКр). – 3НФ
КодКр à (ВидДеят, Цена). – 3НФ
НомДома à ПлощДома – 3НФ
НомЗал à (ПлощЗал, ВидДеят, НомДома) – 3НФ
КодИнв à (НазвИнв, Количество, СтоимИнв) – 3НФ
КодСоревн à (КодКр, ПризФонд, КодПровед) – 3НФ
КодПровед à (Проведение, КодСоревн) – 3НФ
(КодКр, КодИнв) à Количество – 2НФ
(КодСоревн, НомПол) à (Место, КодПровед) – 2НФ
Путем приведения нашей универсальной таблицы ко 2ой и 3ей нормальным формам мы избавились от всех аномалий.
Можно сделать следующий вывод, что таблицы, построенные по ER–диаграмме и путем нормализации, совпадают.
Таблицы – это объекты, предназначенные для хранения данных в виде записей (строк) и полей (столбцов). Каждая таблица содержит данные об определенном объекте.
Создание таблицы производится в два этапа:
В MS Access используются три способа создания таблиц путем ввода данных, с помощью Конструктора таблиц и с помощью Мастера создания таблиц.
Наиболее широкие возможности по определению параметров создаваемой таблицы предоставляет режим Конструктора (в Конструктор таблиц можно выйти сразу из окна базы данных), поэтому в данной работе используем режим конструктора.
Чтобы создать таблицу в режиме Конструктора, осуществляем следующие действия:
После описания всех полей будущей таблицы ее нужно сохранит. Сохранение структуры выполняется следующим способом:
После указанных действий в списке таблиц в окне базы данных появятся имя и значок новой таблицы. Ввести данные в созданную таблицу можно, открыв таблицу в режиме Таблицы.
Для ввода данных в таблицу существует несколько способов:
Первоначально ввод данных производили в режиме таблицы. Для этого необходимо открыть таблицу и заполнить её. Для перемещения по ячейкам записей можно использовать стрелки на клавиатуре или курсор мыши. Для перехода по записям удобнее всего использовать кнопки, расположенные в нижней части окна таблицы. Там же расположено поле, отображающее номер текущей записи, с которой производится действие. Для перехода сразу в нужную запись поля с номером записи, вводим номер записи и нажимаем клавишу ENTER. Для добавления записи необходимо нажать кнопку стрелочка со звездочкой и вводить данные. Так же можно менять цвет фона, линию сетки и шрифт вводимых данных. Все это можно сделать в пункте меню ФОРМАТ.
Для более удобного способа добавления данных в таблицу используется Форма, здесь вероятность ввода ошибочных данных меньше. Так же как и в таблице, в форме для перемещения по записям предусмотрены кнопки в нижней части формы. Так же существует запись для добавления новых записей, она отображается последней записью в форме. После ввода новых данных, они автоматически добавляются в таблицу.
После проведенной нормализации сущностей и выделения окончательных таблиц вместе с их атрибутами настало время рассчитать приблизительный объем памяти, который потребуется для хранения данных, в соответствии с требованиями заказчика.
Таблица 3.1 - Преподаватели
Имя Поля |
Тип Данных |
Память(байт) |
НомПасп |
Числовой |
4 |
ФамПр |
Текстовой |
50 |
ИмяПр |
Текстовой |
50 |
Должность |
Текстовой |
50 |
Стаж |
Числовой |
2 |
ДатаРожд |
Дата/время |
8 |
Оклад |
Денежный |
10 |
КодКр |
Числовой |
2 |
ИТОГО: |
176 |
Таблица 3.2 – Кружки
Имя поля |
Тип данных |
Память (байт) |
КодКр |
Числовой |
2 |
ВидДеят |
Текстовый |
50 |
Цена |
Денежный |
10 |
ИТОГО: |
62 |
Таблица 3.3 – Договор
Имя поля |
Тип данных |
Память (байт) |
НомДог |
Числовой |
5 |
НомПасп |
Числовой |
4 |
НомПол |
Числовой |
6 |
КодКр |
Числовой |
2 |
ДатаЗаключ |
Дата/время |
8 |
СрокДейст |
Числовой |
2 |
ДатаРаст |
Дата/время |
8 |
ИТОГО: |
35 |
Таблица 3.4 – Обучающиеся
Имя поля |
Тип данных |
Память (байт) |
НомПол |
Числовой |
6 |
ФамОб |
Текстовый |
50 |
ИмяОб |
Текстовый |
50 |
ДатаРожд |
Дата/время |
8 |
Достижения |
Поле объекта |
300 |
ИТОГО: |
364 |
Таблица 3.5 – Олимпиада
Имя поля |
Тип данных |
Память (байт) |
КодСоревн |
Числовой |
4 |
КодКр |
Числовой |
2 |
ДатаПровед |
Дата/время |
8 |
ПризФонд |
Денежный |
10 |
КодПровед |
Числовой |
4 |
ИТОГО: |
28 |
Информация о работе Автоматизированная база данных с использованием MS Access