МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное образовательное учреждение высшего профессионального образования
«Чувашский государственный университет им. И.Н. Ульянова»
Факультет информатики и вычислительной техники
Кафедра «Информационно-вычислительных систем»
Дисциплина «Базы данных»
Пояснительная записка к курсовой работе
Тема: «Футбольный болельщик»
Выполнил
Проверил
Чебоксары – 2009
Содержание
1 Задание
2 Анализ. Предметная область
2.1 Описание предметной области (уточненной у преподавателя)
2.2 Перечень и описание функций приложения обработки базы данны
2.3 Перечень и описание сущностей и атрибутов базы данных
3 Проектирование. Нормализация базы данных. Схема данных
3.1 Пошаговое описание нормализации базы данных (методом ER-диаграмм)
3.2 Схема данных
3.3 Перечень и описание таблиц и их полей (с указанием типов данных и ограничений) в сводной таблице
4 Программная часть. Руководство программиста
4.1 Назначение и условия применения программы
4.2 Характеристика программы
4.3 Обращение к программе
4.4 Входные и выходные данные
4.4.1 Словесное описание
4.4.2 Описание функций
4.5 Сообщения
5 Сопровождение. Руководство пользователя
5.1 Область применения программы
5.2 Краткое описание возможностей
5.3 Уровень подготовки пользователя
5.4 Программные и аппаратные требования к системе
5.5 Подготовка к работе
5.5.1 Состав дистрибутива
5.5.2 Аварийные ситуации
5.5.3 Рекомендации по освоению
6 Список использованной литературы
7 Приложение 1. Исходный текст приложения
1. Задание
Футбольный болельщик
Написать систему для ведения турнирных таблиц чемпионатов и кубков, в которых участвуют российские команды (чемпионаты как российские, так и международные). Система должна содержать справочную информацию о командах (история, составы, тренеры, игры и победы), игроках (биография, история), тренерах (биография, история, в каких командах играл, если был игроком) и судьях (биография, какие матчи судил, в каких командах играл, если был игроком).
В турнирной таблице учитываются очки (3 – за победу, 1 – за ничью, 0 за поражение), а также забитые и пропущенные голы, место проведения. Нужно хранить информацию о каждом матче.
2. Анализ. Предметная область
2.1 Описание предметной области
Необходимо разработать информационный ресурс, где хранится информация о футбольных командах, игроках, тренерах, судьях, чемпионатах и матчах. В соответствии с занесенными данными о матче выводить турнирную таблицу и таблицу результатов.
2.2 Перечень и описание функций приложения обработки базы данных
1. Система должна хранить справочную информацию по игрокам, тренерам, командам, судьям, чемпионатам.
2. Система должна регистрировать и хранить информацию о матчах: чемпионат; какая команда играла в гостях, а какая дома; количество забитых и пропущенных голов команды, которая играет дома; дату матча.
3. Система должна выводить турнирную таблицу, в которой хранится информация о количестве игр, количестве забитых и пропущенных мячей, количество побед, проигрышей и ничьих, количество очков.
4. Система должна выводить таблицу результатов(сетку).
5. Система должна осуществлять поиск матчей.
2.3 Перечень и описание сущностей базы данных
Игроки. Каждый игрок имеет уникальный номер, ФИО, биографические сведения и амплуа.
Команды. За каждой командой закреплен соответствующий код, название, состав и краткие исторические сведения.
Тренеры. Каждый тренер имеет уникальный номер , ФИО, биографические сведения.
Судьи. Каждый судья имеет уникальный номер, ФИО, биографические сведения. Чемпионаты. Хранится уникальный номер чемпионата, название и год проведения.
Матчи. Хранится информация о чемпионате, в рамках которого проводился матч, дата матча, команда, которая играла дома, команда, которая играла в гостях, количество забитых и пропущенных первой командой мячей.
2.4 Перечень и описание всех атрибутов базы данных
1 | idChemp | Номер чемпионата |
2 | NameChemp | Название чемпионата |
3 | Year | Год проведения чемпионата |
4 | idCom | Номер команды |
5 | NameCom | Название команды |
6 | AdressCom | Адрес команды |
7 | Gorod | Город команды |
8 | History | Краткие исторические сведения о команде |
9 | DateSozd | Год основания команды |
10 | IdMatch | Уникальный код матча |
11 | DateMatch | Дата матча |
12 | CityMatch | Город, где проводился матч |
13 | idPlayer | Уникальный код игрока |
14 | FPlayer | Фамилия игрока |
15 | IPlayer | Имя игрока |
16 | OPlayer | Отчество игрока |
17 | DateRozhd | Дата рождения игрока |
18 | Grazhd | Гражданство игрока |
19 | Amplua | Амплуа игрока |
20 | BiografPlayer | Биографические сведения о игроке |
21 | idTren | Уникальный код тренера |
22 | FTren | Фамилия тренера |
23 | ITren | Имя тренера |
24 | OTren | Отчество тренера |
25 | DateRozhd | Дата рождения тренера |
26 | Gorod | Родной город тренера |
27 | BiografTren | Биографические сведения о тренере |
28 | idSud | Уникальный код судьи |
29 | FSud | Фамилия судьи |
30 | ISud | Имя судьи |
31 | OSud | Отчество судьи |
32 | DateRozhd | Дата рождения судьи |
33 | Gorod | Родной город судьи |
34 | BiografSud | Биографические сведения о судье |
35 | Doma | Уникальный код команды, которая играла дома |
36 | Gost | Уникальный код команды, которая играла в гостях |
37 | ZabMjach | Кол-во забитых мячей командой, которая играла дома |
38 | PropMjach | Кол-во пропущенных мячей командой, которая играла дома |
39 | Дата рождения тренера | |
40 | DatePokup | Дата покупки игрока |
41 | DateProdazh | Дата продажи игрока |
42 | DateNaznach | Дата назначения тренера |
43 | DateUchod | Дата ухода тренера из команды |
44 | Dozhn | Должностьтренера в команде |
3. Проектирование. Нормализация базы данных. Схема данных
3.1 Пошаговое описание нормализации базы данных (методом ERдиаграмм)
Нормализуем каждую связь используя соответствующие правила нормализации ER-диаграмм. В результате получим готовую схему данных.
3.2 Схема данных
Chempionats (idChemp,NameChemp, Year)
Command(idCom, NameCom, AdressCom, Gorod, History, DateSozd, mini_img, big_img)
CommandInChemp (idChemp,idCom)
Matches(idMatch, idChemp, DateMatch, CityMatch)
MatchRezult (idMatch, Doma, Gost, ZabMjach, PropMjach)
Players (idPlayer, FPlayer, IPlayer, OPlayer, DateRozhd, Grazhd, BiografPlayer, Amplua)
Sostav (idCom, idPlayer, DatePokup, DateProdazh)
Sudja (idSud, FSud, ISud, OSud, DateRozhd, Gorod, BiografSud)
SudjiInMatch(idMatch, idSud)
Treners (idTren, FTren, ITren, OTren, DateRozhd, Gorod, BiografTren)
TrenersForCommand (idCom, idTren, DateNaznach, DateUchod)
3.3 Перечень и описание таблиц и их полей в сводной таблице
Chempionats | ||
idChemp | Номер чемпионата | int |
NameChemp | Название чемпионата | Varchar(255) |
Year | Год проведения чемпионата | Year(4) |
Command | ||
idCom | Номер команды | Int |
NameCom | Название команды | Varchar(255) |
AdressCom | Адрес команды | Varchar(255) |
Gorod | Город команды | Varchar(255) |
History | Краткие исторические сведения о команде | Text |
DateSozd | Год основания команды | Date |
mini_img | Логотип маленького размера | Varchar(255) |
big_img | Логотип большого размера | Varchar(255) |
CommandInChemp | ||
idChemp | Номер чемпионата | int |
idCom | Номер команды | Int |
Matches | ||
IdMatch | Уникальный код матча | Int |
idChemp | Номер чемпионата | int |
DateMatch | Дата матча | Date |
CityMatch | Город, где проводился матч | Varchar(255) |
MachRezult | ||
IdMatch | Уникальный код матча | Int |
Doma | Уникальный код команды, которая играла дома | int |
Gost | Уникальный код команды, которая играла в гостях | int |
ZabMjach | Кол-во забитых мячей командой, которая играла дома | Int |
PropMjach | Кол-во пропущенных мячей командой, которая играла дома | Int |
Players | ||
idPlayer | Уникальный код игрока | Int |
FPlayer | Фамилия игрока | Varchar(255) |
IPlayer | Имя игрока | Varchar(255) |
OPlayer | Отчество игрока | Varchar(255) |
DateRozhd | Дата рождения игрока | Date |
Grazhd | Гражданство игрока | Varchar(255) |
Amplua | Амплуа игрока | Varchar(255) |
BiografPlayer | Биографические сведения о игроке | Text |
Sostav | ||
idCom | Номер команды | Int |
idPlayer | Уникальный код игрока | Int |
DatePokup | Дата покупки игрока | Date |
DateProdazh | Дата продажи игрока | date |
Treners | ||
idTren | Уникальный код тренера | Int |
FTren | Фамилия тренера | Varchar(255) |
ITren | Имя тренера | Varchar(255) |
OTren | Отчество тренера | Varchar(255) |
DateRozhd | Дата рождения тренера | Date |
Gorod | Родной город тренера | Varchar(255) |
BiografTren | Биографические сведения о тренере | Text |
TrenersForCommand | ||
idCom | Номер команды | Int |
idTren | Уникальный код тренера | Int |
DateNaznach | Дата назначения тренера | Date |
DateUchod | Дата ухода тренера из команды | Date |
Dozhn | Должностьтренера в команде | Varchar(255) |
Sudja | ||
idSud | Уникальный код судьи | Int |
FSud | Фамилия судьи | Varchar(255) |
ISud | Имя судьи | Varchar(255) |
OSud | Отчество судьи | Varchar(255) |
DateRozhd | Дата рождения судьи | Date |
Gorod | Родной город судьи | Varchar(255) |
BiografSud | Биографические сведения о судье | Text |
SudjiInMatch | ||
IdMatch | Уникальный код матча | Int |
idSud | Уникальный код судьи | Int |
4. Программная часть. Руководство программиста