Академический Документы
Профессиональный Документы
Культура Документы
ФЕДЕРАЦИИ
федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«УЛЬЯНОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Колледж экономики и информатики
КУРСОВАЯ РАБОТА
Междисциплинарный курс Технология разработки и защиты баз данных
Подпись _____________________________
Ульяновск
2020
ВВЕДЕНИЕ
База данных (БД) – это организованная структура, предназначенная для
хранения информации. В современных базах данных хранятся не только
данные, но и информации[1].
С понятием базы данных тесно связано понятие системы управления
базой данных (СУБД). Это комплекс программных средств, предназначенных
для создания структуры новой базы, наполнение её содержимым,
редактирование содержимого и визуализации информации. Под
визуализацией информации базы понимается отбор отображаемых данных в
соответствии с заданным критерием, их упорядочение, оформление и
последующая выдача на устройства вывода или передачи по каналам
связи[2].
Информация базы данных хранится в одной или нескольких таблицах.
Любая таблица с данными состоит из набора однотипных записей,
расположенных друг за другом. Они представляют собой строки таблицы,
которые можно добавлять, удалять или изменять.
Каждая запись является набором именованных полей, или ячеек,
которые могут хранить самую разнообразную информацию, начиная от даты
рождения и заканчивая подробным описанием кулинарного рецепта.
Однотипные поля разных записей образуют столбец таблицы[3].
Создав одну таблицу, вы уже получаете полноценную базу данных.
Однако в реальной жизни структуры баз данных, а соответственно и способы
их создания, намного сложнее.
В мире существует множество СУБД. Несмотря на то, что они могут
по-разному работать с разными объектами и предоставляют пользователю
различные функции и средства, большинство СУБД опираются на единый
устоявшийся комплекс основных понятий. Это даёт нам возможность
рассмотреть одну систему и обобщить её понятия, приёмы и методы на весь
класс СУБД . В качестве такого учебного объекта выбрана СУБД Microsoft
Access 2013, входящую в пакет Microsoft Office. Для того чтобы знать, каким
2
образом можно эффективно управлять информацией, современный человек
должен уметь с помощью компьютеров и средств связи получать,
накапливать, хранить и обрабатывать данные в базах данных. По получению
таких знаний пользователю СУБД существенную помощь в этом может
оказать обучающие-контролирующая программа.
Увеличение объема и структурной сложности хранимых данных,
расширение круга пользователей информационных систем привели к
широкому распространению наиболее удобных и сравнительно простых для
понимания реляционных (табличных) СУБД. Для обеспечения
одновременного доступа к данным множества пользователей, нередко
расположенных достаточно далеко друг от друга и от места хранения баз
данных, созданы сетевые мультипользовательские версии БД основанных на
реляционной структуре. В них тем или иным путем решаются специфические
проблемы параллельных процессов, целостности (правильности) и
безопасности данных, а также санкционирования доступа[4][5].
3
Постановка задачи
Вариант 41.
Учет продаж в магазине игрушек. Магазин разделен на отделы. В каждом
имеются по 2 консультанта, продающих товары. Все работают по сменам.
Определить выручку за смену, за период. Сформировать списки продаж по
отделам и по консультантам.
Модель данных в 3НФ
4
id_товара – атрибут, являющийся внешним ключом и связывающий
таблицу “Товары” c таблицей “Проданные товары” (хранит первичный
ключ таблицы “Товары”, тип integer);
Количество – количество проданного товара (тип integer);
id_чека – атрибут, являющийся внешним ключом и связывающий таблицу
“Чек” c таблицей “Проданные товары” (хранит первичный ключ таблицы
“Чек”, тип integer);
3. Таблица “Чек” хранит в себе информацию о проданных товарах и
содержит четыре атрибута:
id чека - является первичным ключом (тип integer);
Время продажи – время проданного товара (тип time);
id_консультанта – атрибут, являющийся внешним ключом и
связывающий таблицу “Консультант” с таблицей “Чек” (хранит
первичный ключ таблицы “Консультант”, тип integer);
id_смены – атрибут, являющийся внешним ключом и связывающий
таблицу “Смены” c таблицей “Чек”(хранит первичный ключ таблицы
“Cмены”, тип integer);
4. Таблица “Консультанты” хранит в себе информацию о консультантах и
содержит четыре атрибута:
id консультанта - является первичным ключом (тип integer);
ФИО – ФИО консультанта (тип text);
Дата рождения – дата рождения консультанта (тип date);
id_отдела – атрибут, являющийся внешним ключом и связывающий
таблицу “Отдел” c таблицей “Консультант” (хранит первичный ключ
таблицы “Отдел”, тип integer);
5. Таблица “Отдел” хранит в себе информацию об отделе и содержит два
атрибута:
id отдела - является первичным ключом (тип integer);
Наименование – название отдела (тип text);
5
6. Таблица “Смены” хранит в себе информацию о смене и содержит четыре
атрибута:
id_смены - является первичным ключом (тип integer);
Дата_смены - (тип date);
Вид_смены – (тип string);
Ответственный за смену - (тип string);
Создание таблиц:
CREATE TABLE product(id integer primary key,
name nvarchar(255) not null,
price float not null);
Заполнение таблиц.
Для заполнения таблиц созданы тестовые наборы данных. Первыми
заполняются таблицы Товар, Отдел, Консультант, затем Смена и
Продажи(чек) и последней - таблица Проданный товар.
Insert into product (id, name, Price)
Values (1, 'Яблоко', 40.05),
(2, 'Мандарины' ,35.99),
(3, 'Гранат' ,80.70),
(4, 'Ананас' ,120.60),
(5, 'Ручка' ,15.25),
(6, 'Тетрадь' ,32.55);
7
Результат заполнения таблиц
8
Примеры результатов выборки данных:
Первый запрос проводит выборку значений атрибутов name, price
таблицы product и сортирует по возрастанию поля name(по алфавитному
порядку) и по убыванию значений поля price:
9
Третий запрос проводит выборку значений таблицы product по
шаблону, относящемуся к полю price (у которых цена между 20 и 100).
10
Пятый запрос проводит выборку значений таблицы checkk, объединенной с
таблицей change. Выводится информация о смене консультанта.
SELECT checkk.time_of_sale,change.The_hange
FROM checkk
INNER JOIN change ON checkk.id= change.id
WHERE change.The_hange = "дневная";
Заключение
В ходе выполнения курсовой работы было проведено исследование
возможностей баз данных, получены практические навыки работы с базами
данных, а также пройден полный процесс создания базы данных от
разработки модели данных до готовой к использованию базы данных.
11
Сформированы запросы к готовой базе данных, продемонстрированы
практические результаты, полученные в ходе выполнения курсовой работы.
СПИСОК ЛИТЕРАТУРЫ
1. Дунаев В. В., Базы данных, Язык SQL для студента / В.В. Дунаев. - М.:
БХВ-Петербург, 2017. - 288 c.
2. Прайс Джейсон, Операторы SQL и программы PL/SQL / Джейсон Прайс.
- М. ЛОРИ, 2018. - 660 c.
12
3. Голицына, О. Л. Базы данных / О.Л. Голицына, Н.В. Максимов, И.И.
Попов. - М.: Форум, 2019. - 400 c.
4. Персианов В. В., Технология Проектирования Информационной Базы Для
Педагогических Вузов Страны / - Москва: Огни, 2018. - 594 c.
5. Кузнецов С. Д., Основы баз данных / С.Д. Кузнецов. - М.: Бином.
Лаборатория знаний, Интернет-университет информационных
технологий, 2017. - 488 c.
13