Проектирование и реализация базы данных для обеспечения автоматизированного учета результатов футбольного турнира. Осуществление логического, а также физического проектирования базы данных. Описание запросов на выборку и манипуляцию данными на языке SQL.
Аннотация к работе
Для достижения поставленной цели необходимо решить следующие задачи: 1. Осуществить логическое и физическое проектирование базы данных, а так же описать запросы на выборку и манипуляцию данными на языке SQL.Процесс учета результатов футбольного турнира осуществляется с момента подготовки к турниру до отправки данных в спорткомитет и включает в себя следующие этапы: подготовка к турниру, проведение турнира и обработка результатов турнира (Рисунок 2). Процесс подготовки к турниру рисунок 3 включает в себя этапы утверждение мест проведения, составление расписания, а так же составление протокола матча. Составление расписания рисунок 4 происходит после добавления данных добавление новой команды в базу данных, состоящей из игроков и тренеров, осуществляется футбольной коллегией в том случае, если о ней не содержится информации в базе данных.Уровень декомпозиции диаграммы: 0 Коэффициент сбалансированности: Число стрелок, соединяющихся с блоком: 7 Коэффициент сбалансированности: Анализ детализация процесса A1 «Подготовка к турниру» Коэффициент сбалансированности: Анализ детализация процесса A12 «Составление расписания» Коэффициент сбалансированности: Коэффициент сбалансированности на дочерних уровнях декомпозиции для дочерних уровней процесса «Осуществление учета проката и продажи дисков» свидетельствует о том, что диаграмма сбалансирована.Логический уровень концептуальной схемы процесса «Учет результатов футбольного турнира» представлен следующим набором сущностей (Рисунок 2.1): футболист, тренерский штаб, турнир, команда, матч. Сущность «Команда» представляет собой набор атрибутов, который позволит хранить более подробную информацию о футболистах и тренерах. Сущность «Команда» связана неидентифицирующей связью типа «один ко многим» с сущностью «Футболисты» и «Тренеры», т.к неидентифицирующая связь для связи данных сущностей выбрана потому, что единственный экземпляр сущности «Команда» связан с множеством экземпляров подчиненных сущностей «Футболисты» и «Тренеры». Т.е. одна команда включает в себя несколько футболистов и тренеров. К ключевым атрибутам сущности «Футболисты» относится атрибут «Номер футболиста». Неключевыми атрибутами данной сущности являются «Дата рождения», «Рост», «Вес», «Позиция», «ФИО» и мигрирующий ключ «Номер команды»,а для сущности «Тренерский штаб» ключевым атрибутом является «Номер тренера», а неключевыми «ФИО», «Дата рождения», «Профессия» и мигрирующий ключ «Номер команды».Поскольку стандартов на объекты БД не существует (например, нет стандарта на типы данных), физическая модель зависит от конкретной реализации СУБД. Если в логической модели не имеет значения, какой конкретно тип данных имеет атрибут, то в физической модели важно описать всю информацию о конкретных физических объектах - таблицах, полях, индексах и т. д. В физической модели используются следующие типы атрибутов сущностей: INTEGER, VARCHAR, CHAR, DECIMAL, DATE. Типу INTEGER принадлежат атрибуты: «Номер футболиста» сущности «Футболист», «Номер тренера» сущности «Тренерский штаб», «Номер команды» сущности «Команда», «Номер турнира» сущности «Турнир», «Номер матча», «Первая команда» сущности «Матч». Типу VARCHAR принадлежат атрибуты: «Позиция», «ФИО» сущности «Футболист», «ФИО», «Профессия» сущности «Тренерский штаб», «Название», «Информация» сущности «Команда», «Результаты матча» сущности «Матч».По разработанной концептуальной схеме логического и физического уровней в базе данных «Учет результатов футбольного турнира» были созданы 5 таблиц (Приложение А). Тренерский штаб Номер_тренера ФИО Дата_рождения Профессия COACH COACH_NUMBER FIO COACH_DATE PROFESSIONПосле создания таблиц базы данных была произведена ее актуализация - заполнение. При заполнении таблиц базы данных использовалось особое подмножество языка SQL - язык манипуляции данными (DML). Наиболее часто пришлось использовать оператор INSERT, который позволяет написать запрос на заполнение полей таблиц соответствующими значениями.Приведем пример некоторых запросов на выборку информации из базы данных.FROM MATCH WHERE (MATCH_DATE > "31.05.2012") AND (MATCH_DATE <= "31.06.2012") Формула РА: ? MATCH_NUMBER, MATCH_DATE, RESULT_MATCH, FIRST_TEAM_FK, TURNIR_NUMBER_FK, TEAM_NUMBER_FK (? (MATCH_DATE > 31.05.2012)& (MATCH_DATE <=31.12.2011) (MATCH)); Формула РИК: {m | m ‘MATCH’ & $ m (MATCH) & m (MATCH_DATE > "31.05.2012") & (MATCH_DATE <= "31.06.2012")} Формула РА: ?, PLAYER_NUMBER, PLAYER_DATE, ROST, VES, POSITION, FIO, TEAM_NUMBER_FK (? (ROST>=’180’) (PLAYER)) Формула РА: ? COACH_NUMBER, FIO, COACH_DATE, PROFESSION, TEAM_NUMBER_FK (? (COACH_DATE>’31.12.1986’) (COACH))база данные запрос языкВ реляционной модели данных определены два базовых требования обеспечения целостности: целостность ссылок, целостность сущностей. Также существуют ограничения доменов (определение множества значений, которые образуют этот домен, то есть процесс создания домена и наложения на него ограничений целостности совпад
План
Содержание
Введение
1. Анализ предметной области
1.1 Описание предметной области
1.2 Количественный анализ модели процесса
2. Концептуальное проектирование базы данных
2.1 Логический уровень концептуальной схемы
2.2 Физический уровень концептуальной схемы
2.3 Создание таблиц базы данных на языке SQL
2.4 Запросы SQL на манипулирование данными
2.5 Запросы SQL на выборку информации из базы данных
2.5.1 Простые запросы
3. Целостность и безопасность базы данных
3.1 Целостность данных
3.2 Стратегии безопасности базы данных
Заключение
Список использованных источников
Приложение
Введение
Целью курсовой работы является проектирование и реализация базы данных для обеспечения автоматизированного учета результатов футбольного турнира.
Для достижения поставленной цели необходимо решить следующие задачи: 1. Построить модель процессов предметной области;
2. Осуществить логическое и физическое проектирование базы данных, а так же описать запросы на выборку и манипуляцию данными на языке SQL. Представить написанные запросы с помощью формул реляционной алгебры и реляционного исчисления кортежей.
3. Обеспечить ограничение целостности и безопасности для базы данных.