Базы данных

2



	Федеральное агентство по образованию

	

	ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

	СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

	

	

	Кафедра комплексной информационной безопасности 

	электронно-вычислительных систем (КИБЭВС)

	

	

	Проектирование учебно-исследовательской базы данных

	"Клиенты"

	

	Пояснительная записка к курсовой работе по дисциплине

	«Базы данных»

	

	

	

	

	Студент гр. № 523-3

	Елисеев В.Н.

	«____» _________2005

	Руководитель

	Сопов М. А.

	«____» _________2005

	

	

	

	

	Томск – 2005

	
Министерство образования РФ

	ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ 

	УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

	Кафедра комплексной информационной безопасности электронно- 

	вычислительных систем (КИБЭВС)

	

	ЗАДАНИЕ

	по курсовому проектированию по дисциплине “Базы данных” студенту Елисееву Василию Николаевичу группы 523-3 факультета ВС. 

	Тема проекта: ”Клиенты”

	2. Срок сдачи студентом законченного проекта _______________________

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

	Предметная область: Клиент, проект, плата за проект, исполнитель, соисполнитель. Клиент может заказать несколько проектов. Плата за проект не может меняться. Один проект может быть заказан несколькими клиентами. Проект может выполняться полностью исполнителем или с помощью соисполнителей. В проекте может быть несколько соисполнителей и один соисполнитель может выполнять несколько проектов. 

	4.Дата выдачи задания: _________________________________________ Задание принял к исполнению (дата)_________________________________

	

	Елисеев В.Н______________(подпись студента)

	
Содержание

	

		1. Введение………………………………………………….……………………..4

		2. Построение концептуальной модели……………….…………………….…5

		3. Проектирование реляционной модели данных на основе принципов нормализации…………………………………………….………………………..7

		3.1 Нормализация…………………………………………………..……….……7

		3.2 Глоссарий……………………………………………………………..………9

		4. Проектирование базы данных в Microsoft Access……………………..……10

		4.1 Построение таблиц…………………………………………………...…….10

		4.2 Создание запросов…………………………………………………………...11

		4.3 Создание SQL – запросов (Structured Query Language)………………....14

		5. Заключение……………………………………………………………….……18

		Список использованных источников………………………………………..….19

	
1. Введение

	

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

		
2. Построение концептуальной модели

		

		Объектами модели являются: клиент, проект, плата, исполнитель, соисполнитель. К объектам модели выбираем основные атрибуты.

		Основные атрибуты для клиента:

		Идентификационный номер клиента:

		Имя

		Фамилия

		Отчество

		Адрес

		Телефон

		Основные атрибуты для проекта:

		Идентификационный номер проекта

		Название

		Стоимость

		Длительность

		Техническое задание

		Основные атрибуты для платы за проект:

		Идентификационный номер платежа

		Сумма платежа

		Основные атрибуты для исполнителя:

		Идентификационный номер исполнителя

		Фамилия

		Основные атрибуты для соисполнителя:

		Идентификационный номер соисполнителя

		Фамилия

		После выбора атрибутов определяются связи между объектами. В зависимости от условий, связи между объектами могут быть: один к одному, один ко многим и многие ко многим. Между объектами исполнитель и проект имеется связь один ко многим, так как один исполнитель может выполнять множество проектом, но один проект не могут выполнять несколько исполнителей. Объекты клиент и проект, клиент и плата, исполнитель и соисполнитель взаимодействуют с помощью связей многие ко многим, так как много клиентов могут заказать много проектов, много клиентов могут внести много платежей и много исполнителей могут иметь много соисполнителей. В результате спроектирована концептуальная модель, изображенная на рисунки 2.1

		

Клиент

Проект

Плата

Соисполнитель

Адрес

Сумма

Id_buy

Исполнитель

Отчество

Телефон

Имя

Id_client

Фамилия

Название

Id_project

Стоимость

Длительность

Тех. задание

Фамилия

Id_ispoln

Фамилия

Id_soisp

Рисунок 2.1 - Концептуальная модель

м

м

м

м

м

м

м

1

		

		

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	
3 Проектирование реляционной модели данных на основе принципов нормализации

	

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

	

Рисунок 3.1 - Реляционная модель

Id_Client (PK)



Имя

Фамилия

Отчество

Адрес

Телефон

Id_isp (FK)



Id_Project (PK)



Название

Стоимость

Длительность

Тех. задание

Id_Client (FK)



Id_Buy (PK)



Сумма

Id_Client (FK)



Id_isp (PK)



Фамилия



Id_soisp (PK)



Фамилия

Id_isp (FK)



Проект

Клиент

Плата

Исполнитель

Соисполнитель

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	
3.1 Нормализация

		

		Нормализация – это процесс, позволяющий гарантировать, эффективность структур данных в реляционной базе данных. Реляционная база данных считается эффективной, если она обладает следующими характеристиками: отсутствие избыточности, минимальное использование null-значений, предотвращение потери информации.

	Первая нормальная форма (1НФ). Говорят, что реляционная таблица находится в первой нормальной форме, если и только если все значения полей атомарные.

	Все таблицы реляционной модели данных находится в 1НФ по определению.

	Вторая нормальная форма (2НФ). Говорят, что таблица находится во второй нормальной форме, если и только если каждый его неключевой атрибут зависит от первичного ключа.

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

	


Рисунок 3.1.1 - Вторая нормальная форма

Id_Client (PK)



Имя

Фамилия

Отчество

Адрес

Телефон

Id_Buy (FK)



Id_Project (PK)



Название

Стоимость

Длительность

Тех. задание

Id_isp (FK)



Id_Buy (PK)



Сумма



Id_isp (PK)



Фамилия



Id_soisp (PK)



Фамилия



Проект

Клиент

Плата

Исполнитель

Соисполнитель

Id_Client (PK)



Id_Project

Id_isp (PK)



Id_soisp

Cli_Pro

Ispoln_soisp

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	

	3.2 Глоссарий

	

	Таблица 3.2.1 Сопоставление некоторых физических и логических имен модели

	Физическое имя

	Логическое имя

	Тип поля

	Описание

	Id_Client

	Номер клиента

	Числовое

	Уникальный идентификатор клиента

	Id_Project

	Номер проекта

	Числовое

	Уникальный идентификатор проекта

	Id_Buy

	Номер платежа

	Числовое

	Уникальный идентификатор платежа

	Id_isp

	Номер исполнителя

	Числовое

	Уникальный идентификатор исполнителя

	Id_soisp

	Номер соисполнителя

	Числовое

	Уникальный идентификатор соисполнителя

		
4. Проектирование базы данных в Microsoft Access

	

	Для проектирования базы данных была выбрана программная система разработки Microsoft Access, как наиболее распространенная и, на мой взгляд, наиболее удобная система.

		

		4.1 Построение таблиц

		

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

	Далее приступаем к заполнению таблицы данными. Данные в каждое поле вводим вручную 

	

		4.2 Создание запросов.

		

		После того как все необходимые таблицы построены, в них занесены все требующиеся данные, приступаем к созданию запросов на выборку.

		Для этого переходим на вкладку “Запросы”. В режиме конструктора добавляем таблицы, необходимые для запроса.

		После того как необходимые таблицы добавлены, приступаем к формированию запроса. В строке “Имя таблицы” выбираем таблицы, по которым будет осуществляться выборка, соответственно в строке “Поле” поля для выборки. В строке “Условие отбора” указываем условие для поля, по которому будет выполняться выборка. В строке “Вывод на экран” ставим “флажки” под тем полем, которое необходимо вывести на экран после выполнения запроса. Для примера добавим таблицу “Клиенты”. Из таблицы “Клиенты” осуществим выборку по полям: “Имя”, “Фамилия” и “Отчество”. Условие отбора - “Like "А"” для поля “Имя”. (Рисунок 4.2.2).

		ператор Like понимается как “подобно чему-либо”, а оператор “*”, обозначает, что после буквы “А” следует любая комбинация из любого количества символов. Т.е. мы создали запрос на выборку всех клиентов из таблицы “Клиенты”, чьё имя начинается на «А»

		

		4.3 Создание SQL – запросов (Structured Query Language)

		

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

		Для создания SQL – запроса перейдем в режим конструктора, затем перейдем в режим SQL 

		На языке SQL напишем запрос следующего содержания 

		SELECT Плата.сумма, Клиенты.Имя, Клиенты.Фамилия, Клиенты.Отчество

		FROM Плата, Клиенты

		WHERE Плата.сумма BETWEEN 55000 AND 70000;

		В данном примере создан SQL – запрос, который осуществляет выборку (SELECT) по полям “Сумма”, “Имя”, “Фамилия”, “Отчество” из (FROM) таблиц “Плата” и “Клиенты”, где (WHERE) значение поля “Сумма“ находится между (BETWEEN) 55000 и (AND) 70000.

		
5 Заключение

		

		Курсовая работа выполнена в соответствии с техническим заданием.

		Разработана и спроектирована учебно-исследовательская база данных “Клиенты”, содержащая необходимые данные об обслуживании клиентов. База данных разработана в программной системе разработки баз данных Microsoft Access, что позволяет легко понять ее организацию и простоту управления. Получить необходимую информацию из базы данных можно, используя SQL – запросы. На основе данной учебно-исследовательской базы данных возможно проектирование подобных баз данных для схожих целей.

		
Список использованных источников

		

		1. Карпова Т. Базы данных: модели, разработка, реализация, 2001.

		2. Ребекка М. Райордан Основы реляционных баз данных, 2001.

		3. Сервер Информационных Технологий http://www.citforum.ru/ основы современных баз данных.

		4. Н. А. Трифонова, С.С Прозорова Office для студента Лабораторный практикум.