4. 使用studentsdb数据库中的grade表。 (1)创建一个存储过程stu_g_r, 当输入一个学生的学号时,通过返回输出参数获取该学生选修课程的门数。 (2)执行存储过程stu_g_r,输入学号0002。 (3)显示0002号学生的选课门数。
时间: 2024-03-06 20:48:10 浏览: 157
实验课-第9次-18308045-谷正阳1
下面是实现的存储过程:
```mysql
DELIMITER //
CREATE PROCEDURE stu_g_r(IN stu_id CHAR(5), OUT course_num INT)
BEGIN
SELECT COUNT(*) INTO course_num FROM grade WHERE sno = stu_id;
END //
DELIMITER ;
```
然后,执行以下代码来调用存储过程,并获取0002号学生选课门数:
```mysql
SET @course_num = 0;
CALL stu_g_r('0002', @course_num);
SELECT @course_num;
```
执行结果将会是该学生选修课程的门数。
阅读全文