CALL set_stu_score('201810101101', '1001', 20);为什么改变了两次数据
时间: 2023-12-25 15:03:58 浏览: 66
stu_score_ms.rar_Score!_jsp课程管理_stu_score_ms_学生信息管理_教师信息管理
5星 · 资源好评率100%
很抱歉,我之前回答的有误。您执行的`CALL set_stu_score('201810101101', '1001', 20)`语句,只会将score字段的值设置为20,而不是累加20。
如果您希望将score字段的值加上20,可以修改set_stu_score存储过程的代码,使用以下的UPDATE语句:
```
UPDATE course_selection SET score = score + IN_score WHERE stu_id = IN_stu_id AND course_id = IN_course_id;
```
这样,每次执行存储过程时,就会将指定学生和指定课程的成绩加上IN_score指定的值。例如:
```
CALL set_stu_score('201810101101', '1001', 20);
```
执行以上语句后,会将学号为201810101101、课程号为1001的选课记录的成绩加上20。如果再次执行同样的语句,那么该选课记录的成绩会再次加上20,因此您观察到的是成绩改变了两次。
阅读全文