Файл: Проектирование БД для домашней библиотеки.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 28.03.2023

Просмотров: 530

Скачиваний: 17

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ВВЕДЕНИЕ

Актуальность темы курсовой работы подтверждает тот факт, что сейчас умение обрабатывать информацию является ключевым навыком во всех сферах, не только в сфере информационных технологий. Разрабатывается все больше ПО для сбора, хранения и обработки информации. В том числе довольно новое, но очень популярное направление Big Data, которое применяется во многих отраслях современной инфраструктуры. Язык структурированных запросов (далее SQL – Structured Query Language) предоставляет пользователям очень простой и в то же время очень эффективный способ обработки данных. Помимо этого, SQL широко используется и в прикладном программировании, что дает возможность работать с ним и обычным пользователям, даже не прибегая к синтаксису самого языка.

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

Среди основных СУБД мы можем отметить таких «гигантов» в сфере IT технологий, как Microsoft (Microsoft SQL Server Management Studio, или SSMS), Oracle (Oracle SQL Developer), MySQL AB и Sun Microsystems (MySQL) и т.д.

Предметом исследования курсовой работы является «Проектирование БД для домашней библиотеки», объектом – «Базы данных».

Целью курсовой работы является изучение возможностей использования SQL даже для домашнего ежедневного использования. Являясь поклонником библиотек, книг и имея в наличии достаточное их количество, полученная в ходе исследоования и разработки БД может быть использована локально.

В рамках выполнения цели, необходимо будет решить следующие задачи:

1) определить основные понятия: база данных, система управления базами данных (далее – СУБД), классификация СУБД, основные возможности языка SQL;

3) проведение сравнительного анализа разных видов СУБД;

2) выявить преимущества и недостатки реляционной модели данных;

4) рассмотреть синтаксис языка SQL;

5) разработать структуру и подготовить скрипты для создания БД для домашней библиотеки.

Синтаксис скриптов будет использоваться для SSMS.

1 Глава. Аналитическая часть.


1.1 Описание предметной области. Постановка задачи

Еще совсем недавно использование Excel в качестве основного инструмента регистрации и обработки информации было обычным делом и даже крупные компании делились опытом и «фишками» использования Excel для ведения данных о сотрудниках, расчета заработной платы, премий, продаж, сведениях о клиентах и т.д. Сейчас же многие переходят на базы данных (далее – БД) и различные программы, использующие SQL как основной инструмент работы с БД. Что же это меняет? Почему использование Excel перестало быть таким популярным?

Первое преимущество использования SQL это, конечно же, возможность работы с БД несколькими пользователями одновременно, без риска «затереть» данные друг друга.

Оперативность работы. Ни для кого не секрет, что при значительном объеме данных, скорость работы Excel падает в несколько раз. А так же при использовании более сложного функционала, форм или макросов, скорость обработки функций так же падает. При работе с БД через прикладные программы (в основном использующих клиент-серверную архитектуру) запросы уже оптимизированы, и потеря скорости незначительна для конечного пользователя.

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

Это основные, но далеко не все преимущества перехода на прикладные программы с Excel. Конечно же, в некоторых случаях использование Excel остается конкурентным вариантом. И, при наличии соответствующих специалистов, Excel может полностью заменить прикладные программы, работающие с БД.

База данных – это организованный (упорядоченный) набор структурированной информации или данных, которые хранятся в электронном виде в компьютерной системе. Обычно, БД управляется с помощью системы управления базой данных.

Итак, перед нами стоит задача создать удобный инструмент для ведения домашней библиотеки с использованием СУБД. Для этого нам нужно будет:


  1. Придумать и настроить интерфейс для ввода данных;
  2. Создать структуру БД;
  3. Настроить БД;
  4. Определить список результатов (отчетов), которые мы хотим получать.

В качестве источника данных могут быть использованы следующие опции:

  1. Веб-интерфейс для записи данных в библиотеку;
  2. Загрузка данных из Excel с помощью стандартного фукционала СУБД;
  3. Ручной ввод в БД с помощью скриптов.

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

Что же может понадобиться пользователю такой БД? Какие отчеты и результаты он бы хотел видеть на выборке? Предлагаю определить основные характеристики, которые будут описаны для книг:

  1. Автор;
  2. Название;
  3. Жанр и поджанр;
  4. Язык, на котором написана книга;
  5. Основной цвет обложки;
  6. Факт прочтения.

Соответственно, в качестве результата может быть отчет, отфильтрованный по одному или нескольким полям характеристик. И, в качестве стандартного отчета – все книги в библиотеке, которые еще не были прочитаны.

Т.к. библиотекой пользуюсь я одна – создавать многопользовательскую версию БД я не вижу смысла. Все действия будут выполняться одним единственным пользователем, он же – администратор БД.

Задачей курсовой работы является: создание удобного инструмента для ведения настроенной базы данных для домашней бибилиотеки и с возможностью выгружать необходимые отчеты из БД.

1.2.Выбор средств / методологии проектирования. Выбор СУБД

Система управления базами данных (далее СУБД) – это комплекс программных инструментов и средств, которые необходимы для создания структуры новой БД, ее редактирования, наполнения и отображения информации. СУБД могут быть классифицированы различными способами: по модели данных, по организации данных, по способу доступа к данным (Рисунок 1).

Рисунок 1 – Классификация СУБД


Классификация СУБД в соответствии с моделью данных. По данной классификации всего выделяют 5 типов СУБД. Рассмотрим их особенности:

  1. Иерархическая модель данных (Рисунок 2). Представляет собой набор элементов данных, расположенные в порядке подчинения. В иерархической структуре: каждый узел на более низком уровне должен быть связан только с одним узлом на более высоком уровне; корневой узел должен быть только один и он не должен подчиняться никакому другому узлу; до каждого узла существует только один путь от корневого.

Рисунок 2 – Иерархическая модель данных

Примером Иерархической модели данных может служить модель населенных пунктов планеты Земля, где на первом (корневом) узле будет находиться планета Земля, далее континенты (Евразия, Африка, Южная Америка и т.д.), далее страны (Россия, Англия, Китай и т.д.), и, наконец, населенные пункты (Лондон, Москва, Санкт-Петербург, Париж и т.д.).

  1. Сетевая модель данных (Рисунок 3). Внешне похожа на иерархическую модель, но, в отличии от нее каждый узел может быть связан с любым узлом.

Рисунок 3 – Сетевая модель данных

Наглядным примером сетевой модели данных может служить список учеников школы, распределенных по дополнительным занятиям. На первом уровне будет находиться школа, далее классы (пока что никакого различия с иерархической структурой не наблюдается), на третьем уровне – ученики и на четвертом дополнительные занятия. На последних двух уровнях как раз яркий пример сетевой модели данных, так как ученики из разных классов могут заниматься в одном и том же кружке и, в свою очередь, каждый ученик может заниматься в нескольких кружках одновременно. Плюс каждый кружок проводит один из преподавателей, курирующих определенный класс, поэтому так же наблюдается связь четвертого и второго уровней структуры.

  1. Реляционная модель данных (Рисунок 4). Организована в виде двумерных таблиц. Каждая из таблиц в свою очередь является двумерным массивом. Таблицы должны соответствовать правилам: каждый из столбцов таблицы однородный по типу данных; каждый столбец имеет уникальное имя для этой таблицы; порядок строк и столбцов в таблице произвольный; каждая строчка (запись) имеет уникальный идентификатор для этой таблицы.

Рисунок 4 – Реляционная модель данных


Область применения реляционных таблиц очень широка. Для данной курсовой работы будет актуален пример списка сотрудников на предприятии (Рисунок 5). Для крупных предприятий характерно использование набора ID в полях описания сотрудника и последующее обращение к соответствующей таблице для определения значения этого ID. Допустим у нас имеется предприятие «Фирма». В базе данных Фирмы существует список физических лиц, в котором имеются все данные по людям, которые когда-либо так или иначе работали на предприятии. Далее имеется список работников – каждые прием и увольнение сотрудника. В этой таблице мы видим ссылку на ID из таблицы физических лиц, но так же имеется свой уникальный ID для каждого работника, т.к. одно и то же физ. лицо может быть принят и уволен несколько раз. Далее мы видим таблицу со списком назначений – в ней отражены все перемещения и изменения для каждого работника. В этой таблице так же записаны ID физ. лица и работника, но и свой уникальный ID присутствует. В столбце с должностью записывается ID должности, значение которой может быть извлечено из соответствующей таблицы должностей.

Набор таблиц и полей в подобной БД может варьироваться в зависимости от области применения и необходимости предприятия.

Рисунок 5 – Пример реляционной модели данных

  1. Объектно-ориентированная модель данных. Согласно определению, это БД, в которой данные формируются в виде объектов, атрибутов, методов и классов этих объектов. Каждый объект такой БД имеет свой уникальный идентификатор. Объекту присущи состояние и поведение. Состояние объекта характеризуется набором его атрибутов. Поведением объекта называется набор методов, управляющих его состоянием. Множество объектов с одинаковыми атрибутами и методами объединяются в классы объектов. Класс имеет свойство наследование – то есть создание нового класса, на основе уже существующего. При этом вновь созданный класс (подкласс) наследует все свойства родительского класса (суперкласс), но к ним приобретает свои дополнительные атрибуты и методы. Зачастую в прикладном программировании используются именно такие модели данных, так как с ними проще всего взаимодействовать на программном уровне. Проще всего представить объектно-ориентированную модель на примере (Рисунок 6). Рассмотрим ту же БД для предприятия «Фирма», но уже в объектно-ориентированной модели.