Introducción
En este proyecto, aprenderás cómo crear un procedimiento almacenado en MySQL para recuperar los cursos con créditos mayores a 3. Este proyecto te ayudará a entender los conceptos básicos de trabajo con procedimientos almacenados en un sistema de gestión de bases de datos.
👀 Vista previa
MariaDB [edusys]> CALL getCourses();
+-----------+----------------------------+------------+---------+
| course_id | título | dept_name | créditos |
+-----------+----------------------------+------------+---------+
| BIO-101 | Introducción a la Biología | Biología | 4 |
| BIO-301 | Genética | Biología | 4 |
| CS-101 | Introducción a la Ciencia de la Computación | Ciencias de la Computación | 4 |
| CS-190 | Diseño de Juegos | Ciencias de la Computación | 4 |
| PHY-101 | Principios Físicos | Física | 4 |
+-----------+----------------------------+------------+---------+
5 filas en set (0.000 sec)
🎯 Tareas
En este proyecto, aprenderás:
- Cómo acceder a MySQL utilizando el comando
sudosin contraseña - Cómo importar datos en la base de datos MySQL
- Cómo crear un procedimiento almacenado para recuperar datos específicos de una tabla
- Cómo probar el procedimiento almacenado para asegurarse de que funcione como se espera
🏆 Logros
Después de completar este proyecto, podrás:
- Comprender el propósito y los beneficios de utilizar procedimientos almacenados en una base de datos
- Crear tus propios procedimientos almacenados para realizar tareas específicas de recuperación de datos
- Solucionar problemas y probar procedimientos almacenados para asegurarte de que funcionen correctamente
- Aplicar los conocimientos adquiridos en este proyecto para construir aplicaciones basadas en bases de datos más complejas
Acceder a MySQL e importar la base de datos
En este paso, aprenderás cómo acceder a MySQL utilizando el comando sudo sin ninguna contraseña e importar los datos de /home/labex/project/edusys.sql a MySQL.
- Iniciar el servicio de MySQL:
sudo service mysql start
- Acceder a MySQL utilizando el comando
sudo:
sudo mysql
- Importar los datos de
/home/labex/project/edusys.sqla MySQL y cambiar a la base de datosedusys:
MariaDB [None]> SOURCE /home/labex/project/edusys.sql;
Crear el procedimiento almacenado getCourses
En este paso, crearás un procedimiento almacenado llamado getCourses que recupera los cursos de la tabla course donde el valor del campo credits es mayor que 3.
- Abre el archivo
getCourses.sql. - Agrega el siguiente código al archivo
getCourses.sql:
-- Creando el procedimiento almacenado getCourses
DELIMITER //
CREATE PROCEDURE getCourses()
BEGIN
-- Recuperar cursos de la tabla course donde el campo credits es mayor que 3
SELECT course_id, title, dept_name, credits
FROM course
WHERE credits > 3;
END //
DELIMITER ;
- Guarda y cierra el archivo.
Probar el procedimiento almacenado getCourses
En este paso, probarás el procedimiento almacenado getCourses para asegurarte de que funcione como se espera.
- Ejecuta el script
getCourses.sqlen MySQL:
MariaDB [edusys]> SOURCE /home/labex/project/getCourses.sql;
- Llama al procedimiento almacenado
getCourses:
MariaDB [edusys]> CALL getCourses();
+-----------+----------------------------+------------+---------+
| course_id | título | dept_name | créditos |
+-----------+----------------------------+------------+---------+
| BIO-101 | Introducción a la Biología | Biología | 4 |
| BIO-301 | Genética | Biología | 4 |
| CS-101 | Introducción a la Ciencia de la Computación | Ciencias de la Computación | 4 |
| CS-190 | Diseño de Juegos | Ciencias de la Computación | 4 |
| PHY-101 | Principios Físicos | Física | 4 |
+-----------+----------------------------+------------+---------+
5 filas en set (0.000 sec)
La salida muestra que el procedimiento almacenado getCourses está funcionando como se espera, recuperando todos los cursos con créditos mayores a 3.
Resumen
¡Felicitaciones! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.
