1

このストアド プロシージャを何度も変更しましたが、同じエラーが発生し続けます。カーソルの選択を個別にテストしたため、行が返されていることはわかっています。このサイトで他の同様の問題を読みましたが、同じ修正がないようです。

DECLARE iDone INTEGER(10) DEFAULT 0; 
DECLARE userID INTEGER(10);
DECLARE creditRemaining INTEGER(10);

DECLARE column_cur CURSOR FOR
     SELECT `userID`, `creditRemaining` FROM `access` 
     WHERE (`dateExpire`>=now() OR `isRenewed`=1) and `descriptionShort`='Subscription';

DECLARE CONTINUE HANDLER FOR NOT FOUND SET iDone=1;

SET userID = 0;
SET creditRemaining = 0;
OPEN column_cur;
LOOP1: LOOP   

   FETCH column_cur INTO userID, creditRemaining;
   IF iDone = 1
       THEN
          LEAVE LOOP1;
   END IF;
   -- SELECT userID, creditRemaining;
   UPDATE `users` SET `saveCount`=creditRemaining, `searchCount`=6000 WHERE `ID`=userID;

END LOOP LOOP1;
CLOSE column_cur;
4

1 に答える 1