Автор работы: Пользователь скрыл имя, 02 Апреля 2013 в 10:30, курсовая работа
Цель работы – создание и разработка базы данных «БД «Кафедра информационно-компьютерных технологий»».
Для достижения цели были поставлены задачи:
- анализировать литературу по данной теме;
- ознакомится с предметной областью;
- построить ER – модель базы данных;
- охарактеризовать СУБД для реализации БД;
- построить логическую модель данных;
- разработать проект и БД;
- создать объекты БД (таблицы, формы, отчёты, запросы);
- определить условия целостности БД;
- создать справочную службу;
- спроектировать меню приложения;
- создать инсталляционный пакет.
Введение 3
1. Теоретическая часть 5
1.1. Описание предметной области «Кафедра информационно-компьютерных технологий» 6
1.2. Инфологическое проектирование 8
1.3. Выбор СУБД 11
1.4. Логическое проектирование 13
2. Разработка БД «БД «Кафедра информационно-компьютерных технологий»» 16
2.1. Проектирование базы данных 16
2.1.1. Создание таблиц и заполнение их текстовой информацией 17
2.1.2. Определение условий целостности данных и разработка мероприятий по контролю и достоверности данных и обеспечению защиты от несанкционированного доступа 23
2.2. Проектирование форм 25
2.2.1 Обоснование и определение необходимого набора форм, их содержание 25
2.3. Проектирование отчетов 27
2.3.1 Обоснование и определение необходимого набора отчетов, их содержание 28
2.4 Обоснование и определение необходимого набора запросов, их содержание 30
2.5 Проектирование меню проекта 31
2.5 Программирование программной оболочки управления базами данных 32
2.6. Разработка систем оперативной справки 33
2.7 Создание инсталляционного пакета проекта 34
Заключение 36
Список используемых источников 37
Microsoft Visual FoxPro-одна из самых популярных реляционных СУБД. Предназначена для создания приложений баз данных объёма предприятий, обладает хорошим быстродействием и устанавливается на различные платформы, удобна и проста в использовании. В Visual FoxPro имеется несколько уровней разработки приложений. Если необходимо в кратчайшее время разработать не очень сложное приложение, вы можете воспользоваться средствами быстрой разработки приложений, которые представлены многочисленными мастерами для создания форм, отчетов, почтовых этикетов и многого другого. Visual FoxPro является системой управления реляционными базами данных, которые в настоящее время являются наиболее распространенными. Visual FoxPro состоит из отдельных компонентов, которые используются для хранения и представления информации. Этими компонентами являются таблицы, представления данных, формы, отчеты, запросы, программы и библиотеки.
Сделаем небольшой вывод: мы будем разрабатывать нашу БД в FoxPro, потому что она удовлетворяет всем потребностям разработчика БД, а именно:
Логическим проектированием называют проектирование логической структуры БД в среде конкретной СУБД. На этой стадии проектирования главное — добиться, чтобы модель максимально корректно и полно описывала предметную область, для которой создается. Кроме того, нужно минимизировать избыточность данных и устранить связанные с этим проблемы, то есть выполнить нормализацию.
Перед нормализацией БД «Кафедра информационно-компьютерных технологий» представляет собой структуру, которая еще не разбита на более управляемые таблицы меньшего размера. В таблице 1 представлена БД нормализации 1НФ.
В отсортированной реляционной базе данных выделяют следующую последовательность нормальных форм:
Для удовлетворения условий первой нормальной формы атрибуты в таблице должны быть атомарными, каждая таблица должна иметь по крайней мере один уникальный ключ. Поэтому для выполнения условия необходимо создать индекс, который включал бы совокупность всех полей таблицы, однозначно определял запись. Должна устранять повторяющиеся группы полей.
Таблица 1. 1 Таблица "Кафедра информационно-компьютерных технологий" в 1НФ
Кафедра информационно-компьютерных технологий | |
Аудитория |
Текстовый |
Id группы |
Текстовый |
ФИО преподавателя |
Текстовый |
Предмет |
Текстовый |
Часы |
Числовой |
Курс |
Числовой |
Научное направление |
Текстовый |
Научная степень |
Текстовый |
Id сотрудника |
Числовой |
Должность |
Текстовый |
Номер телефона |
Числовой |
Id зачётной книжки |
Числовой |
Теперь приведем таблицу ко 2НФ. Отношения во 2НФ, если оно приведено к 1НФ и каждый не ключевой атрибут функционально полно зависит от составного ключа.
Для приведения ко 2НФ необходимо: построить проекцию, полностью исключив атрибуты, которые не находятся в функциональной зависимости от составного ключа; построить дополнительные проекции на часть составного ключа и атрибуты, функционально зависящие от ключа.
Ключом отношения «Кафедра
информационно-компьютерных технологий»
является комбинация полей (Id группы, ФИО преподавателя,
Id сотрудника, Id зачётной книжки). Все поля, не входящие в состав ключа, зависят только от первичного
ключа(Id группы). Поэтому отношения должны
быть разбиты на: Расписание(таблица 1.2)
и Преподаватель-Сотрудник-
Таблица 1.2 Таблица " Расписание" 2НФ
Id группы |
Текстовый |
Аудитория |
Текстовый |
Предмет |
Текстовый |
Часы |
Числовой |
Курс |
Числовой |
Научное направление |
Текстовый |
Должность |
Текстовый |
Номер телефона |
Числовой |
Таблица 1.3 Таблица " Преподаватель-Сотрудник-
Id группы |
Текстовый |
Id зачётной книжки |
Числовой |
Id сотрудника |
Числовой |
ФИО преподавателя |
Текстовый |
Для приведения таблицы к 3НФ, необходимо устранить функциональные зависимости между не ключевыми атрибутами отношения. Другими словами, факты, хранимые в таблице, должны зависеть только от ключа. Выделим отношения: Сотрудники.
Таблица 1.4 Таблица " Сотрудники " 3НФ
Id сотрудника |
Числовой |
ФИО преподавателя |
Текстовый |
Перейдем к 4НФ.Для отношения
Преподаватель-Сотрудник-
Таблица 1.5 Таблица " Преподаватели" 4НФ
Id группы |
Текстовый |
Id сотрудника |
Числовой |
Таблица 1.6 Таблица " Студенты" 4НФ
Id группы |
Текстовый |
Id зачётной книжки |
Числовой |
Смысла проводить нормализацию, дальше нет, мы устранили избыточность. Поэтому остановимся на 4НФ.
Вывод: для реализации базы данных «БД «Кафедра информационно-компьютерных технологий»» построили ER – модель в виде сущность – сущность, отношения находятся в 4НФ.
2.1. Проектирование базы данных
Данная курсовая работа содержит базу данных «kafedra». Данная база данных состоит из семи таблиц в соответствие с предметной областью. Подробное описание таблиц содержится далее.
База данных «Кафедра информационно-компьютерных технологий» содержит в себе семь таблиц:
Для создания проекта базы данных выполняем следующее:
После старта Visual FoxPro выбираем меню File>New, и в окне New выбираем Project (рисунок 1), потом нажимаем кнопку Wizard.
Рис.1 Рис.1.2
Нам будет предложено указать имя файла проекта и его расположение (рисунок 1.2).
После этого, теперь перейдем к созданию самой базы данных:
В менеджере проекта (Project Manager) открываем закладку Date, устанавливаем курсор на Databases и клацаем мышкой на кнопку New (рисунок 1.3).
Рис.1.3 Рис.1.4
В предложенной форме создания новой базы данных выбираем кнопку создания новой базы данных – Create New Database (рисунок 1.4). Вам будет предложено указать имя и место расположения базы данных (рисунок 1.5). Её следует размещать в папке ..\Data\.
Рис.1. 5
Далее в окне, открывшемся конструктора базы данных (Database Designer) выбираем в контекстно-зависимом меню (правая кнопка мыши) опцию New Table и создаем таблицу (рисунок 2.1).
Рис.2.1 Рис.2.2
В предложенной форме создания новой таблицы нажимаем на кнопку New Table (рисунок 2.2). Аналогично базе данных обозначаем имя и расположение таблицы. В открытом на экране конструкторе таблиц задаем структуру (рисунок 2.3). В столбик Name записываем имя поля, в Type выбираем тип поля, в третьем Width определяем длину поля в символах, в пятом Index указываем тип индекса – по возрастанию или убыванию Ascending/Descending, в шестом Null указываем допустимо ли для этого поля значение равное Null. Именовать поля можно и символами кириллицы, но не рекомендуется. Название полей на русском языке можно отобразить при вводе в поле Caption псевдоним поля на нужном языке.
Рис. 2.3
На рисунке 2.4 мы видим, как задается индекс.
Рис.2.4
В таблице 2 мы видим типы индексов.
Таблица 2.
Тип индекса |
Описание |
Regular |
Хранятся значения индексного выражения для всех записей таблицы. Если несколько записей имеют одинаковое значение индексного выражения, то каждое значение хранится отдельно и содержит ссылку на связанную с ней запись |
Unique |
Хранятся только неповторяющиеся
значения индексного выражения. Если две
или более записей содержат одинаковое
значение индексного выражения, то будет
храниться только одно значение и
ссылка на первую из записей с одинаковым
значением индексного выражения. Таблица
может иметь несколько |
Candidate |
Создается уникальный индекс, который не содержит полей с пустыми значениями. Этот индекс обладает всеми качествами первичного ключа и не являются им только по той причине, что таблица не может содержать более одного первичного ключа |
Primаry |
Создается уникальный индекс, который используется для связывания таблиц и определения условий целостности данных. Поля, входящие в первичный ключ, не должны допускать ввод пустых значений. В отличие от уникального индекса, таблица может иметь только один первичный ключ |
Таблица в режиме Modify (рисунок 2.5).
Рис.2.5
Теперь заполняем текстовой информацией таблицы. Таблица в режиме Browse (рисунок 2.6).
Рис.2.6
После того как необходимые поля будут определены, можно определить первичный ключ для таблицы, содержащий одно или несколько полей.
Первичный ключ используется для связывания таблицы с вторичными ключами в других таблицах. Первичный ключ не допускает значений 0 и всегда должен иметь уникальный индекс.
Связь между таблицами создается путём перетаскивания ключевого поля из одной таблицы в другую.
Таблица «Schedule_group» содержит поля:
Заполняем текстовой информацией
рисунок 3.1:
Рис.3.1
Таблица «Schedule_teacher» содержит поля:
Заполняем текстовой информацией рисунок 3.2:
Рис.3.2
Таблица «Curriculum_course» содержит поля:
Заполняем текстовой информацией рисунок 3.3:
Рис.3.3
Таблица «Load_teacher_clock» содержит поля:
Заполняем текстовой информацией рисунок 3.4:
Рис.3.4
Таблица «Lists_telephone» содержит поля:
Заполняем текстовой информацией рисунок 3.5:
Рис.3.5
Таблица «Lists_student_diploma» содержит поля:
Заполняем текстовой информацией рисунок 3.6:
Рис.3.6
Таблица «Lists_scientific_staff» содержит поля:
Заполняем текстовой информацией рисунок 3.7:
Рис.3.7
Таким образом образовались связи «многие-ко-многим». Связи отображены на рисунке 3.8:
Информация о работе БД «Кафедра информационно-компьютерных технологий»