Проектирование базы данных "Кафедра"
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
ФГБОУ ВПО РОСТОВСКИЙ ГОСУДАРСТВЕННЫЙ ЭКОНОМИЧЕСКИЙ
УНИВЕРСИТЕТ (РИНХ)
КАФЕДРА Экономической информатики и автоматизации управления
КУРСОВОЙ ПРОЕКТ
По дисциплине: «Базы данных»
На тему: «Кафедра»
Автор проекта:
студентка гр. 321-ПИ Мусаева Э.А.
Руководитель проекта:
доцент
Ростов-на-Дону
2013г.
Содержание
Введение |
3 |
1 Аналитическая часть |
4 |
1.1 Описание предметной области |
4 |
1.2 Концептуальная модель |
6 |
1.3 Логическая модель БД. |
9 |
1.4 Нормализация |
10 |
1.5 ERD-диаграмма |
13 |
1.6 Физическая модель |
15 |
2 Практическая часть |
19 |
2.1 Обоснование выбора СУБД |
19 |
2.2 Краткая характеристика возможностей языка SQL |
22 |
2.3 Разработка запросов на языке SQL |
24 |
2.4 Разработка отчетов. |
28 |
Заключение |
30 |
Библиографический список |
31 |
Приложения |
32 |
Приложение А Структура БД (Схема данных) |
33 |
Приложение Б Структуры таблиц БД |
34 |
Приложение В Содержание таблиц БД |
37 |
Приложение Г Результаты работы запросов |
39 |
Приложение Д Формы |
41 |
Приложение Е Выходные документы (Отчеты) |
42 |
Введение
Базы данных - важнейшая составная часть информационных систем.
В настоящее время в современном мире электронных технологий практически невозможно представить компанию (фирму или организацию), в которой не требуется обработка некоторого объёма информации. Информацию требуется, где-то хранить. Информация может динамически изменяться. Регулярно требуется выборка данных по определённым критериям из всего массива.
При автоматизации бизнес
процессов очень часто
Базы данных создаются специально для хранения, обработки, проведения расчётов, сортировки, выборки и представления любых массивов данных по любым критериям.
Целью данного курсового проекта является разработка базы данных для работы типовой кафедры ВУЗа средствами СУБД Access.
Реализация поставленной цели предполагает решение следующих задач:
- освоение технологии создания базы данных;
- освоение технологии создания таблиц и установки связи между таблицами;
- изучение технологии;
- освоение возможностей СУБД Access ;
Разработка базы данных и приложения для работы с ней будет осуществляться с применением СУБД Access.
Для проектирования базы данных нужно:
- обследовать предметную область;
- выполнить концептуальное проектирование;
- построить логическую модель БД;
- разработать запросы к базе данных.
1 Аналитическая часть.
- Описание предметной области
Требуется создать БД для кафедры университета.
База данных должна обеспечивать:
- просмотр, добавление и редактирование информации;
- составление расписания занятий для преподавателей.
Кафедра - это подразделение высшего учебного заведения, осуществляющее подготовку студентов в рамках определённой специализации.
На кафедре трудятся профессора, доценты, ассистенты, старшие преподаватели, старшие и младшие научные сотрудники, аспиранты и т.д.
Преподаватели кафедры читают лекции, проводят лабораторные и практические занятия, семинары. Преподаватель имеет табельный номер, стаж работы, номер телефона, должность и ученую степень. Он может проводит занятия по одной дисциплине по разным видам занятий в разных группах, то есть это лекции, практические занятия, лабораторные.
Группа имеет свой номер и направление, по которому будут специализироваться студенты.
По одной дисциплине проводятся разные виды занятий, которые могут проводить разные преподаватели.
Дисциплина включает в себя: код дисциплины, наименование дисциплины, количество семестров, часы лекций, часы практических и лабораторных занятий.
Нагрузка включает в себя: табельный номер преподавателя, шифр дисциплины, вид занятий, номер группы, количество часов.
Расписание занятий составляют, учитываю четную н нечетную неделю. Расписание включает в себя: четная или нечетная неделя, день недели, табельный номер преподавателя, номер группы, шифр дисциплины, вид занятия, номер аудитории.
Данная база данных позволяет систематизировать работу кафедры ВУЗа, упростить составление расписания занятий, учитывать нагрузку преподавателей.
Из выше сказанного формируются сущности:
- Преподаватель;
- Группа;
- Дисциплина
- Расписание занятий;
- Нагрузка преподавателя.
- Концептуальная модель
Сущность – объект, который можно будет идентифицировать некоторым способом, отличающим его то других объектов, и о котором в системе будет накапливаться информация.
Сущности бывают как физически существующие, так и абстрактные. Набор сущностей – множество сущностей одного типа. Для сущностей различают тип и экземпляр. Тип сущности характеризуется именем и списком свойств, а экземпляр – конкретными значениями свойств.
Исходя из описания предметной области, можно выделить 9 сущностей:
- Преподаватель;
- Группа;
- Расписание занятий;
- Дисциплина;
- Нагрузка преподавателя.
Развёрнутая информация обо
всех сущностях, с указанием имени,
описанием имени и особенности
использования приведены в
Таблица 1. Сведения о типах сущности
Имя сущности |
Описание |
Особенности использования |
Группа |
Список групп |
Одна группа изучает несколько дисциплин |
Дисциплина |
Информация о дисциплинах, изучаемых группами |
По одной дисциплине разные виды занятий могут проводить разные преподаватели |
Нагрузка |
Количество часов по дисциплинам |
У каждого преподавателя |
Преподаватель |
Информация о преподавателях |
Каждый преподаватель может вести все виды занятий |
Расписание |
Информация о проведении преподавателем дисциплины |
Существует различие между четной и нечетной неделей |
Связь – средство, с помощью которого представляются отношения между сущностями, имеющимися в предметной области.
Одна из участвующих в связи сущностей является независимой и называется родительской. Другая сущность – зависимая и называется дочерней.
На следующем шаге необходимо определить типы связей, существующие между отдельными сущностями (табл .2).
Таблица 2. Основные типы связи.
Тип сущности |
Тип связи |
Тип сущности |
1. Преподаватель |
проводит |
Дисциплина |
2. Дисциплина |
изучают |
Группа |
3. Преподаватель |
ведет занятия по |
Расписание занятий |
4. Группа |
обращается к |
Расписание занятий |
5. Преподаватель |
закреплена |
Нагрузка |
Атрибут - это поименованная характеристика сущности, которая принимает значения из некоторого допустимого множества.
Различают следующие виды атрибутов:
- идентифицирующие и описательные;
- простые и составные;
- основные и производные.
Выделяют следующие типы связей:
- 1:1 (один-к-одному) – такой тип связи между сущностями A и B, когда одному экземпляру сущности A соответствует только один экземпляр сущности B, и наоборот;
- 1:М (один-ко-многим) – такой тип связи между сущностями A и B, когда одному экземпляру сущности A соответствует один или несколько экземпляров сущности B.
- М:М (многие-ко-многим) – такой тип связи между сущностями A и B, когда каждому экземпляру сущности A соответствует один или несколько экземпляров сущности B, и наоборот.
Между атрибутами вышеперечисленных объектов существует 2 типа отношений:
Связь «проводит» является связью «один-ко-многим», так как один преподаватель может вести все виды занятий.
Связь «изучают» является связью «один-ко-многим», так как одна дисциплина может проводиться в нескольких группах.
Связь «ведет занятий по» является связью «один – ко-многим», так как один преподаватель обращается к расписанию, где указаны все группы.
Связь «обращается к» является связью «один-ко-многим», так как в расписании указаны все группы.
Связь «закреплена» является связью «один-к-одному», так как за одним преподавателем может быть закреплена одна нагрузка.
- Логическая модель БД.
Логическая структура
реляционной базы данных Access является
адекватным отображением полученной информационно
– логической модели, не требующим
дополнительных преобразований. Каждый
информационный объект модели данных
отображается соответствующей реляционной
таблицей. Структура реляционной
таблицы определяется реквизитным
составом соответствующего информационного
объекта, где каждый столбец (поле) соответствует
одному из реквизитов объекта. Ключевые
реквизиты объекта образуют уникальный
ключ реляционной таблицы. Для каждого
столбца задается тип, размер данных
и другие свойства. Строки (записи) таблицы
соответствуют экземплярам
Логическая структура
реляционной базы данных определяется
совокупностью логически
Логические связи
Связи между таблицами осуществляются посредством общих атрибутов.
При проектировании логической модели базы данных необходимо ориентироваться на конкретную СУБД. На этом этапе нужно определить состав и структуру базы данных, назначить имена файлов и отдельных полей, а также определить реквизиты каждого поля.
1.4 Нормализация
Нормализация – получение
такого проекта базы данных, в котором
каждый факт хранится в одном месте,
то есть, исключена избыточность информации
и исключены возможные
Нормализация проводится путем построения нормальных форм базы данных.
В теории реляционных баз данных выделяют следующую последовательность нормальных форм:
- первая нормальная форма (1НФ);
- вторая нормальная форма (2НФ);
- третья нормальная форма (3НФ);
- форма Бойса – Кодда (НФБК);
- четвертая нормальная форма (4НФ);
- пятая нормальная форма или форма проекции – соединения (5НФ).
Чаще всего ограничиваются
первыми тремя нормальными
Первая нормальная форма (1НФ). Сущность находится в первой нормальной форме, если значения всех ее атрибутов атомарные. Все повторяющиеся группы должны быть удалены и помещены в новую (связанную) сущность.
Вторая нормальная форма (2НФ). Сущность находится во второй нормальной форме, если она находится в первой нормальной форме, а каждый ее неключевой атрибут функционально полно зависит ключа (или от каждого компонента первичного ключа — для сущностей с составными ключами, состоящими из двух и более атрибутов). Вторая нормальная форма требует, чтобы не было неключевых атрибутов, которые зависят только от части первичного ключа.
Третья нормальная форма (ЗНФ). Сущность находится в третьей нормальной форме, если она находится во второй нормальной форме и все ее неключевые атрибуты зависят только от первичного ключа. То есть при этом они не должны зависеть и от других неключевых атрибутов.
Следующие таблицы находятся в первой нормальной форме, т.к. они удовлетворяют определению отношения - ячейки содержат одиночные значения, все записи в одном атрибуте имеют один и тот же тип, каждый столбец имеет уникальное имя, нет одинаковых строк. Все повторяющиеся поля удалены и помещены в новую (связанную) сущность.
Таблица 3.«Преподаватель»
Таблица 4. «Группа»
Таблица 5.«Дисциплины»
Таблица 6.«Расписание»
Таблица 7. «Нагрузка»
1.5 ERD-диаграмма
Первым шагом при создании логической модели БД является построение диаграммы ERD (EntityRelationshipDiagram, Диаграмма сущность-связь).
Объединив все сущности и связи между ними, получим обобщенную ER-диаграмму, которая приведена на рисунке 2.
Рисунок 1 «Сущность-связь»
Рисунок 2 – Диаграмма взаимосвязей
1.6 Физическая модель
Переключение между логической и физической моделями данных осуществляется через список выбора на стандартной панели.
При переключении с логического уровня на физический автоматически будет создана физическая схема базы данных (рис.3)
Рисунок 3- Схема данных
В физической модели каждой сущности будет соответствовать таблица базы данных, а каждому атрибуту – поле таблицы.
Следует выделить следующие атрибуты для объектов:
Тип сущности |
Атрибут |
Группа |
Код группы |
Специализация | |
Дисциплина |
Номер дисциплины |
Наименование дисциплины | |
Преподаватель |
Табельный номер преподавателя |
ФИО преподавателя | |
Ученая степень | |
Номер дисциплины | |
Стаж | |
Номер телефона | |
Должность | |
Расписание |
Табельный номер преподавателя |
Номер дисциплины | |
Вид занятия | |
Код группы | |
Номер аудитории | |
День недели | |
Четная, нечетная неделя | |
Время | |
Нагрузка |
Табельный номер преподавателя |
Номер дисциплины | |
Вид занятия | |
Код группы | |
Количество часов |
В полученной модели еще необходимо скорректировать типы и размеры полей.
Структуры таблиц базы данных показаны в таблицах 1.1-1.5
Таблица1.1 - «Группа»
Имя поля |
Ключ |
Тип |
Формат |
Код группы |
да |
числовой |
целое |
Специализация |
числовой |
целое |
Таблица 1.2 – «Дисциплина»
Имя поля |
Ключ |
Тип |
Формат |
Код дисциплины |
да |
числовой |
целое |
Наименование дисциплины |
текстовый |
30 |
Таблица 1.3 – «Преподаватель»
Имя поля |
Ключ |
Тип |
Формат |
Табельный номер преподавателя |
Да |
числовой |
целое |
ФИО преподавателя |
текстовый |
50 | |
Ученая степень |
числовой |
целое | |
Номер дисциплины |
числовой |
целое | |
Стаж |
числовой |
целое | |
Номер телефона |
текстовый |
10 | |
Должность |
текстовый |
30 |
Таблица 1.4 – «Расписание»
Имя поля |
Ключ |
Тип |
Формат |
Табельный номер преподавателя |
да |
числовой |
целое |
номер дисциплины |
да |
числовой |
целое |
Вид занятия |
да |
текстовый |
12 |
Код группы |
да |
текстовый |
50 |
Номер аудитории |
числовой |
целое | |
День недели |
текстовый |
5 | |
Четная нечетная неделя |
текстовый |
10 | |
Время |
текстовый |
5 |
Таблица 1.5 – «Нагрузка»
Имя поля |
Ключ |
Тип |
Формат |
Табельный номер преподавателя |
Да |
числовой |
целое |
Номер дисциплины |
да |
числовой |
целое |
Вид занятия |
да |
текстовый |
15 |
Код группы |
да |
текстовый |
6 |
Количество часов |
числовой |
целое |
В приложении В находятся рисунки таблиц БД, заполненные данными
2 Практическая часть
2.1 Обоснование выбора СУБД
MS Access 2010 в настоящее время является одной из самых популярных среди настольных программных систем управления базами данных. Среди причин такой популярности следует отметить:
- высокую степень универсальности и продуманности интерфейса, который рассчитан на работу с пользователями самой различной квалификации. В частности, реализована система управления объектами базы данных, позволяющая гибко и оперативно переходить из режима конструирования в режим их непосредственной эксплуатации;
- глубоко развитые возможности интеграции с другими программными продуктами, входящими в состав МS Office, а также с любыми программными продуктами, поддерживающими технологию OLE.
- богатый набор визуальных средств разработки.
MS Access - высокопроизводительная (32-разрядная) система управления реляционными базами данных, которая входит в состав профессиональной версии интегрированного пакета Microsoft Office.
MS Access предназначена для разработки настольных баз данных и создания приложений баз данных архитектуры клиент-сервер, работающих под управлением операционных систем семейства Windows. Эта система доступна для пользователя любого уровня.
MS Access работает с объектами, к которым относятся таблицы, запросы, формы, отчеты, макросы и модули. Все связанные между собой объекты организованы в один файл, называемый базой данных.
Основные разделы главного окна соответствуют типам объектов, которые может содержать база данных MS Access. Это Таблицы, Запросы, Формы, Отчеты, Макросыи Модули.
Интерфейс работы с объектами базы данных унифицирован. По каждому из них предусмотрены стандартные режимы работы:
- Создать – предназначен для создания структуры объектов,
- Конструктор – предназначен для изменения структуры объектов,
- Открыть – предназначен для работы с объектами базы данных.
Важным средством, облегчающим работу с MS Access для начинающих пользоваелей, являются мастера – специальные программные надстройки, предназначенные для создания объектов базы данных в режиме последовательного диалога. Для опытных пользователей существуют возможности более гибкого управления ресурсами и возможностями объектов СУБД в режиме конструктора.
Специфической особенностью СУБД MS Access является то, что вся информация, относящаяся к одной базе данных, хранится в едином файле. Такой файл имеет расширение .md
СУБД Access позволяет эффективно работать с данными даже пользователям, не являющимся специалистами по базам данных;
- развитый пользовательский интерфейс, позволяющий вводить и модифицировать информацию, производить поиск и представлять результаты;
- средства программирования высокого уровня, позволяющие создавать собственные приложения.
Основные этапы разработки базы данных в среде MS Access:
- Разработка и описание структур таблиц данных;
- разработка схемы данных и задание системы взаимосвязей между таблицами;
- разработка системы запросов к таблицам базы данных и , при необходимости, интеграция их в схему данных;
- разработка экранных форм ввода/вывода данных;
- разработка системы отчетов по данным;
- разработка программных расширений для базы данных, решающих специфические задачи по обработке содержащейся в ней информации, с помощью инструментария
- макросов и модулей;
- разработка системы защиты данных, прав и ограничений по доступу.
Создание таблиц и схем данных.
Процесс разработки базы данных в СУБД MS Access начинается с задания описания структур таблиц. Нажав кнопку Создать и выбрав в появившемся окне режим конструктор, мы попадаем в окно, предназначенное для ввода описания структуры созда- ваемой таблицы.
Процесс описания атрибутов поля начинается с присвоения ему имени (идентификатора). Желательно, чтобы это имя было с одной стороны информативным, с др. стороны кратким, для удобства манипуляций с ним. Далее необходимо определить тип поля, что, очевидно, должно делаться, исходя из содержания тех данных, которые будут в нем храниться.
Поле может иметь
- формат поля, определяющий условия вывода данных из этого поля (по умолчанию);
- маска ввода, определяющая условия ввода данных в поле;
- подпись - содержит расширенный заголовок;
- значение по умолчанию - позволяет указать значение, автоматически присваиваемое полю при создании новой записи. В нашем случае по умолчанию будет задаваться текущая дата, возвращаемая встроенной функцией Date();
- условие на значение - определяет требования к данным, вводимым в поле. Например, для выполнения требования, чтобы дата эмиссии предшествовала текущей, следует задать выражение <=Date();
- сообщение об ошибке - определяет текст сообщения, которое будет выводиться в случае нарушения заданного выше условия;
- обязательное поле - указывает, требует или нет поле обязательного ввода значения;
- индексированное поле - определяет индекс, создаваемый по данному полю. Индекс ускоряет выполнение запросов, в которых используются индексированные поля, и операции сортировки и группировки.