0
我有一個MySQL的代碼,將遍歷列表並且改變工資總額場。不過,我不明白的是,當劑量爲循環「完成」的值更改停止? Becaunse直到完成取決於改變的價值。這是一本書的例子。總之,這裏是代碼:「完成」值何時更改?
CREATE PROCEDURE updateSalary() BEGIN
DECLARE done INT DEFAULT 0;
DECLARE current_dnum INT;
DECLARE dnumcur CURSOR FOR SELECT dnumber FROM deptsal;
DECLARE continue HANDLER FOR NOT FOUND SET DONE = 1;
OPEN dnumcur;
REPEAT
FETCH dnumcur INTO current_dnum;
UPDATE deptsal SET totalSalary = (SELECT SUM(salary) FROM employee
WHERE dno=current_dnum) WHERE dnumber=current_dnum;
UNTIL done
END REPEAT;
CLOSE dnumcur;
END$$
delimiter ;
任何幫助,將不勝感激! 謝謝。
非常感謝你。現在我可以理解它 –