5.修改存储过程proc_exp,要求输入学生学号时根据该学生所选课程的成绩显示提示信息,即如果平均成绩成绩在60分以上,显示“此学生成绩合格,成绩为XX分”,否则显示“此学生综合成绩不合格,成绩为XX分”
时间: 2024-01-03 17:03:17 浏览: 60
实现学生的学号成绩录入修改显示
好的,根据您的要求,我为您修改了存储过程proc_exp。以下是修改后的代码:
```
CREATE PROCEDURE proc_exp
@stu_id int
AS
BEGIN
DECLARE @avg_score float
SELECT @avg_score = AVG(score) FROM score WHERE stu_id = @stu_id
DECLARE @msg varchar(100)
DECLARE @final_score float
SELECT @final_score = @avg_score * 0.6 + 40 -- 综合成绩算法
IF @final_score >= 60
SET @msg = '此学生成绩合格,成绩为' + CAST(@final_score AS varchar(10)) + '分'
ELSE
SET @msg = '此学生综合成绩不合格,成绩为' + CAST(@final_score AS varchar(10)) + '分'
SELECT @msg AS msg
END
```
修改后的存储过程会根据输入的学生学号,计算该学生的综合成绩,并根据综合成绩来显示相应的提示信息。如果综合成绩在60分以上,则提示“此学生成绩合格,成绩为XX分”,否则提示“此学生综合成绩不合格,成绩为XX分”。注意,这里的XX分是计算出来的综合成绩值。
阅读全文