Введение
В этом проекте вы научитесь использовать курсор для вывода информации о курсах из таблицы section, где семестр - весна. Вы создадите хранимую процедуру для извлечения деталей о курсах и затем выполните процедуру для отображения результатов.
🎯 Задачи
В этом проекте вы научитесь:
- Как запустить сервер MySQL и импортировать базу данных
- Как создать хранимую процедуру с использованием курсора
- Как выполнить хранимую процедуру для извлечения данных из базы данных
🏆 Достижения
После завершения этого проекта вы сможете:
- Разобраться, как использовать курсор для извлечения данных из базы данных
- Создать хранимую процедуру для encapsulation операций с базой данных
- Выполнить хранимую процедуру для отображения нужных данных
Запустить MySQL и импортировать базу данных
В этом шаге вы научитесь запускать сервер MySQL и импортировать базу данных edusys.sql в MySQL.
Запустите сервер MySQL:
sudo /etc/init.d/mysql startВойдите в терминал MySQL:
mysql -urootИмпортируйте базу данных
edusys.sql:SOURCE ~/project/edusys.sql
Создать хранимую процедуру
В этом шаге вы научитесь создавать хранимую процедуру для извлечения информации о курсах из таблицы section, где семестр - весна.
Создайте новый файл с именем
getSection.sqlв директории/home/labex/project.В файле
getSection.sqlопределите разделитель как//:DELIMITER //Создайте хранимую процедуру
getSectionProcude():CREATE PROCEDURE getSectionProcude() BEGIN SELECT course_id, year, room_number FROM section WHERE semester = 'Spring'; END //Сбросьте разделитель обратно к значению по умолчанию:
DELIMITER ;
Выполнить хранимую процедуру
В этом шаге вы научитесь выполнять хранимую процедуру getSectionProcude() для извлечения информации о курсах.
В提示符 MySQL выполните следующую команду для выполнения скрипта subquery.sql:
SOURCE ~/project/getSection.sqlВыполните хранимую процедуру:
CALL getSectionProcude();Это выведет информацию о курсах, где семестр - весна.
MariaDB [edusys]> CALL getSectionProcude(); +-----------+------+-------------+ | course_id | year | room_number | +-----------+------+-------------+ | CS-101 | 2018 | 101 | | FIN-201 | 2018 | 101 | | MU-199 | 2018 | 101 | | HIS-351 | 2018 | 514 | | CS-190 | 2017 | 3128 | | CS-190 | 2017 | 3128 | | CS-319 | 2018 | 3128 | | EE-181 | 2017 | 3128 | | CS-319 | 2018 | 100 | | CS-315 | 2018 | 120 | +-----------+------+-------------+ 10 rows in set (0.001 sec)
Резюме
Поздравляем! Вы завершили этот проект. Вы можете практиковаться в более многих лабораторных работах в LabEx, чтобы улучшить свои навыки.
