Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Базы данных: практикум

Покупка
Артикул: 771175.01.99
Доступ онлайн
110 ₽
В корзину
Пособие содержит теоретический и методический материал по курсу «Базы данных». В работе приведены задания и примеры выполнения лабораторных работ, а также методические рекомендации по курсовому проектированию. Изложение теоретического материала построено таким образом, что облегчить студентам выполнение практических заданий. Для студентов направления 09.03.03 «Прикладная информатика».
Копырин, А. С. Базы данных: практикум : учебно-практическое пособие / А. С. Копырин. - Москва : ФЛИНТА, 2021. - 106 с. - ISBN 978-5-9765-4752-0. - Текст : электронный. - URL: https://znanium.com/catalog/product/1851992 (дата обращения: 26.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
А.С. Копырин 

БАЗЫ ДАННЫХ 

Практикум  
для студентов направления 
«Прикладная информатика» 

Москва
Издательство «ФЛИНТА»
2021

УДК 004.6
ББК  16.3
          К55

Рецензент:
кандидат технических наук, доцент 
Ю.И. Дрейзис 

     Базы данных: практикум / А.С. Копырин. — Москва : ФЛИНТА, 
2021. — 106 с. — ISBN 978-5-9765-4752-0. — Текст : электронный.

Пособие содержит теоретический и методический материал по 
курсу «Базы данных». В работе приведены задания и примеры 
выполнения 
лабораторных 
работ, 
а 
также 
методические 
рекомендации 
по 
курсовому 
проектированию. 
Изложение 
теоретического материала построено таким образом, что облегчить 
студентам выполнение практических заданий. 
Для студентов направления 09.03.03 «Прикладная информатика». 

УДК 004.6 
ББК  16.3

© ФГБОУ ВО «СГУ», 2019 
© Копырин А.С., 2019 

Копырин А.С.

К55

ISBN 978-5-9765-4752-0

СОДЕРЖАНИЕ

Введение.................................................................................................................................... 5
1. Лабораторная работа «Разработка проекта приложения»................................................ 6
Теоретические сведения .......................................................................................................... 6
Практическая работа................................................................................................................ 7
Пример....................................................................................................................................... 7
2. Лабораторная работа «Разработка концептуальной модели».......................................... 9
Теоретические сведения .......................................................................................................... 9
Практическая работа.............................................................................................................. 11
Пример..................................................................................................................................... 11
3. Лабораторная работа «Разработка логической модели»................................................ 17
Теоретические сведения ........................................................................................................ 17
Практическая работа.............................................................................................................. 18
Пример..................................................................................................................................... 18
4. Лабораторная работа «Проектирование физической модели базы данных» ............... 30
Теоретические сведения ........................................................................................................ 30
Практическая работа.............................................................................................................. 35
Пример..................................................................................................................................... 35
5. Лабораторная работа «Создание и связывание таблиц базы данных в среде MySQL».......39
Теоретические сведения ........................................................................................................ 39
Практическая работа.............................................................................................................. 43
Пример..................................................................................................................................... 44
6. Лабораторная работа «Вставка, удаление и обновление данных»................................ 51
Теоретические сведения ........................................................................................................ 51
Практическая работа.............................................................................................................. 54
Пример..................................................................................................................................... 54
7. Лабораторная работа «Создание простых запросов на выборку»................................. 57
Теоретические сведения ........................................................................................................ 57
Практическая работа.............................................................................................................. 68
Пример выполнения работы.................................................................................................. 68
8. Лабораторная работа «Создание сложных запросов на выборку»................................ 69
Теоретические сведения ........................................................................................................ 69
Практическая работа.............................................................................................................. 74
Пример выполнения работы.................................................................................................. 74
9. Лабораторная работа «Создание хранимых процедур» ................................................. 75
Теоретические сведения ........................................................................................................ 75
Практическая работа.............................................................................................................. 82
Пример выполнения работы.................................................................................................. 82
10. Лабораторная работа «Создание триггеров»................................................................. 85

Теоретические сведения ............................................................................................ 85

Практическая работа.............................................................................................................. 86
Пример выполнения работы.................................................................................................. 86
11. Лабораторная работа «Транзакции»............................................................................... 88
Теоретические сведения ........................................................................................................ 88
Практическая работа.............................................................................................................. 91
Пример выполнения работы.................................................................................................. 91
12. Лабораторная работа «Работа с представлениями»...................................................... 91
Теоретические сведения ........................................................................................................ 91
Практическая работа.............................................................................................................. 94

Пример выполнения работы.................................................................................................. 95
Методические указания по выполнению курсового проекта ............................................ 96
Цель курсового проектирования........................................................................................... 96
Этапы курсового проектирования........................................................................................ 97
Структура  проекта................................................................................................................. 97
Типовое содержание курсового проекта............................................................................ 101
Комплекс проектных работ................................................................................................. 102
Заключение ........................................................................................................................... 104
Библиографический список................................................................................................. 105

ВВЕДЕНИЕ

В представленном издании изложен материал для лабораторных заня
тий и курсового проектирования по курсу «Базы данных», читаемому в 
Сочинском государственном университете.

В ходе его изучения студенты получают знания о моделях данных, 

проектировании реляционных баз данных, языке SQL и системе управления базами данных MySQL

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

1. ЛАБОРАТОРНАЯ РАБОТА «РАЗРАБОТКА ПРОЕКТА

ПРИЛОЖЕНИЯ»

Теоретические сведения

Разработка собственного проекта приложения включает следующие 

этапы

1. Уточнение задач.
Составление списка задач, которые должны были бы решаться этим 

приложением. Основные задачи должны быть представлены в формах и 
отчетах.

2. Последовательность выполнения задач. 
Объединение основных задач в тематические группы. Упорядочивание 

задач каждой группы в порядке их выполнения.

3. Анализ данных.
Составление для каждой задачи подробного перечня всех данных, не
обходимых для ее решения с указанием вида данных.

Виды данных
• исходные данные (вводимые);
• данные, которые будут проверяться или изменяться;
• данные, которые можно добавлять или удалять;
• данные, получаемые расчетным путем (в саму базу данных не вно
сятся).

4. Определение структуры данных.
Необходимо упорядочить элементы данных по объектам и соотнести 

эти объекты с таблицами и запросами базы данных, используя процесс 
нормализации.

5. Разработка макета приложения и пользовательского интерфейса.
6. Создание приложения.
В случае простых приложений созданный макет (программа) является 

законченным приложением. Однако большинство приложений потребует 
написание процедур, которые позволили бы полностью автоматизировать 
решение всех задач.

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

7. Тестирование и усовершенствование. 
Необходимо проверить функционирование приложения в каждой из 

возможных реализаций.

Постановка задач 
При разработке приложений СУБД используют два подхода: 
1. Проектирование сверху-вниз, при котором разработка приложения 

начинается с определения функций и задач. 

Определение задач и их группировка. Это поможет решить, возмож
но ли ограничиться только одной базой данных. 

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

Для каждой задачи определяется набор необходимых данных. 
2. Проектирование снизу-вверх, при котором вначале производится 

анализ данных и определение их структуры. 

- Для связанных между собой задач собираются все поля данных, и 

начинается процесс формирования объектов. 

- Данные каждого объекта являются основой для разработки в базе 

данных отдельной таблицы.

Практическая работа

Разработать проект собственного приложения согласно варианту (со
ответствует номеру в списке) базы данных:

1. Составить описание предметной области 
2. Выделить группы решаемых задач
3. Описать информационные объекты
4. Описать роли пользователей, которые будут работать с базой данных
5. Составить отчет о лабораторной работе

Пример

В библиотеке университета решается широкий круг задач (рис. 1). 

Рис. 1.
Задачи библиотечной системы

Задачей приложения является построение автоматизированной систе
мы учета библиотечных фондов, упрощение работы по систематизации и 
поиску информации по нужному изданию. (Здесь и далее под изданием 
будет подразумеваться любой объект, который хранится и учитывается в 

библиотечном фонде: книга, сборник, статья, журнал, и т.д.). То есть данная база данных предназначена для решения 3 задач:

1. Ведение общего каталога
2. Формирование картотеки обеспеченности
3. Ведение списков публикаций
Выходными данными модели являются общий каталог изданий, списки 

публикаций и картотека обеспеченности. Таким образом, все вышеперечисленное должно появляться в результате работы системы.

Общий каталог представляет собой некое хранилище данных, в котором 

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

Картотека обеспеченности представляет собой хранилище данных, в 

котором содержится информация об имеющейся научной литературе и ее 
количестве в соотношении с конкретным предметом и группам. Например, 
для дисциплины «Высшая математика», для группы 2 года обучения профиля «Менеджмент», в наличии 6 учебников разных авторов. 1 типа учебников - 5 экземпляров, находятся они там и там, и так далее.  Задачей картотеки обеспеченности является помощь преподавателям в планировании 
построения учебной программы и составления доступного для студентов 
списка литературы по конкретной дисциплине.

Входными данными системы являются издания (расшифровку смотри 

выше), а точнее информация о поступлении издания в той или иной корпус 
библиотеки. 

Работать с системой будут 3 типа пользователей:
1. Библиотекари (имеют права для чтения и записи ко всем хранили
щам модели)

2. Привилегированные пользователи (преподаватели) имеют права для 

чтения всех хранилищ.

3. Читатели (студенты) имеют права чтения только к общему каталогу. 
Регламентирующими документами модели являются внутренние пра
вила библиотеки и государственные стандарты библиотечного учета 
(7.0-99; 7.1-84; 7.76-96; 7.11-78; 7.12-93; 7.80-2000 и др.)

Библиотека имеет несколько корпусов, однако информация о поступ
лении новых изданий регистрируется в одном центральном корпусе. 

Основным действием модели должно быть регистрация нового издания 

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

2. ЛАБОРАТОРНАЯ
РАБОТА 
«РАЗРАБОТКА 

КОНЦЕПТУАЛЬНОЙ МОДЕЛИ» 

Теоретические сведения

Концептуальная модель отображает данные предметной области в виде 

совокупности информационных объектов и связей между ними. 

Информационный объект (ИО) – информационное описание некоторой

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

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

Основными свойствами, которым должна удовлетворять концептуаль
ная модель БД, являются прежде всего следующие. 

1. Предметная область должна быть описана адекватно и непротиворе
чиво.

2. Все возможные пользователи должны трактовать эту модель одно
значно и легко ее воспринимать. 

3. При необходимости концептуальная модель должна иметь возмож
ность легко модифицироваться, подвержена композиции и декомпозиции. 

При описании предметной области используются формализованные 

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

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

описание объектов предметной области и связей между ними. Концептуальное моделирование направлено на отображение семантики (то есть 
смысла) предметной области на модель БД. 

На ранних этапах развития теории БД было предложено несколько се
мантических моделей. Все эти модели имели свои преимущества и недостатки и к настоящему моменту времени в подавляющем большинстве 
случаев используется так называемая модель «сущность-связь». Эта модель называется также методом ER-диаграмм 

Диаграммы «сущность-связь» (ERD) предназначены для разработки 

моделей данных и обеспечивают стандартный способ определения данных 
и отношений между ними. С помощью ERD-диаграмм осуществляется детализация хранилищ данных моделируемой и проектируемой системы путем идентификации и документирования объектов (сущностей), важных 
для предметной области, свойств этих объектов (атрибутов) и их отношений с другими объектами (связей). 

Основными понятиями этого метода являются сущность и связь между 

сущностями. Сущностью называется объект или класс однотипных объектов, 
информация о которых содержится в БД. Каждая сущность имеет свое уникальное имя. Характеристики, определяющие свойства сущности, называются ее атрибутами, что эквивалентно понятию атрибута в отношении.

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

Зависимость между сущностями определяет связь между ними. Связи де
лятся на три типа по степени связи сущностей: один-к- одному (1:1), один-комногим (или многие-к-одному) (1:М, М:1), многие-ко-многим (М:М). Существует большое количество различных нотаций для построения ER-модели. В 
этих нотациях используются разные символы, линии и фигуры для указания 
на характеристики объектов БД и связей между ними. 

Следующим этапом вслед за построением ER-модели является форми
рование отношений проектируемой БД. Вообще говоря, переход к отношениям можно формально отнести к следующему этапу проектирования 
БД – логическому проектированию, однако процесс проектирования БД 
является итерационным – зачастую происходит возврат к предыдущим 
этапам для пересмотра принятых ранее решений. Поэтому при формировании отношений иногда приходится изменять уже спроектированную ERдиаграмму в зависимости от возникающих обстоятельств. 

Подводя итоги, сформулируем основные этапы проектирования БД в 

рамках концептуального моделирования.  

1. Определение сущностей и выявление связей между ними. 
2. Построение ER-диаграммы с учетом всех сущностей и связей между 

ними. 

3. Формирование набора предварительных отношений с указанием 

предполагаемых первичных и внешних ключей. 

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

Практическая работа

По разработанному в лабораторной работе № 1 проекту приложения 

провести инфологической моделирование:

1. Описать выполняемые работы
2. Выделить информационные объекты и связи между ними
3. Составить ER-диаграмму
4. Перечислить и описать атрибуты информационных объектов
5. Составить отчет о лабораторной работе

Пример

Описание выполняемых работ
Модель разбивает работу библиотеки по учету изданий на 3 основных 

этапа. На первом этапе определяется тип издания и его будущее место регистрации (книга и статья описываются и регистрируются по-разному). Затем уже по структурированным данным об издании составляется его описание. Составленное описание и другие сопутствующие данные на последнем этапе регистрируются в соответствующих хранилищах. 

Рис. 2.
Контекстная диаграмма модели

Результатом действий модели и получаются сформированные храни
лища, к которым имеют доступ вышеперечисленные пользователи (рис. 2).

Остановимся подробнее на каждом из этапов.

Рис. 3.
Первая декомпозиция модели

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

Этап определения типа проходит следующим образом: поступившие 

данные формализуются и, если требуется, дополняются. После этого данные об издании сверяются с соответствующим Госстандартом и относятся 
к конкретному типу (статья, книга с одним автором, сборник и т.д.). Затем 
определяется наличие информации о данном издании в хранилище (и принимается решение, следует ли занести новую запись в каталог или откорректировать старую) (рис. 4).

Доступ онлайн
110 ₽
В корзину