Лабораторные работы. Дятлов / Отчет Базы данных №3
.pdfМинистерство цифрового развития, связи и массовых коммуникаций Российской Федерации
Федеральное государственное бюджетное образовательное учреждение Высшего образования «Санкт-Петербургский государственный университет телекоммуникаций им. Проф. М. А. Бонч-Бруевича» (СПбГУТ)
Факультет Информационных технологий и программной инженерии
Кафедра Программной инженерии
Лабораторная работа
По дисциплине: База данных
Выполнил студент: Яковлев М. А. ИКПИ-32
Принял работу: Дятлов Д. А.
Дата выполнения: «19» сентября 2025 г.
Санкт-Петербург
2025 г.
Цель работы
Цель работы – получение практических навыков создания хранимых процедур и работы с переменными на языке SQL.
Ход выполнения
Выполненные действия: создана база данных «university» в MySQL Workbench;
создана таблица «departments» с полями id (PK, int) и name (varchar, NN),
заполнена двумя записями; создана таблица «users» с полями id (PK, AI, int), name (varchar, NN), d_id (int), заполнена пятью записями, при этом две связаны с первой группой, три — со второй, включая запись с именем «Ivan».
Создана процедура:
Рисунок 1. Процедура
Результат выполнения команды:
SELECT * FROM users; и SELECT * FROM departments;
Рисунок 2. Результат команды
Результат выполнения команды:
CALL getUserInfo(NULL, @total); SELECT @department; и SELECT @total;
2
Рисунок 3. Результат команды
Результат выполнения команды:
Требовалось запустить созданную хранимую процедуру, изменив первый параметр с NULL на имя пользователя из таблицы «users». Команда: CALL getUserInfo(‘Penni', @total); а также команды SELECT @department; и SELECT @total;
Рисунок 1. Результат команды
Выводы
В ходе выполнения работы были закреплены практические навыки использования процедур в языке SQL. Разработанная процедура позволяет получить отдел (department) пользователя с указанным именем (или ‘Ivan’ по умолчанию), возвращает общее число пользователей в таблице. Код служит для получения информации о конкретном пользователе и общего количества пользователей в базе данных.
Контрольные вопросы
№1. Хранимая процедура хранится в базе данных, а не в отдельном файле. Хранимая процедура представляет собой просто имя, связанное с программным кодом, который хранится и исполняется на сервере.
№2. Хранимая процедура может вызывать другую хранимую процедуру при необходимости.
3
№3. Для вызова хранимой процедуры используется команда CALL
№4. Входные (IN) — передают данные в процедуру. Выходные (OUT) — возвращают данные из процедуры.
№5. Синтаксис переменной, следующий: объявление переменной происходит с помощью ключевого слова DECLARE, например: DECLARE имя_переменной тип_данных;
4
