mysql 存储过程 游标的使用

时间:2024-10-18 13:05:08

BEGIN
DECLARE id long;
DECLARE Done INT DEFAULT 0;
DECLARE userids CURSOR FOR SELECT userid from info_user where isreal = 1;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET Done = 1;

OPEN userids;

REPEAT
FETCH userids into id;

DELETE FROM count_prize WHERE userid=id;
DELETE a,b FROM trade_scoretrade AS a INNER JOIN trade_account AS b WHERE b.ownertype = 1 AND b.ownerid = id AND (a.payerid = b.accountid OR a.payeeid = b.accountid);

UNTIL Done END REPEAT;
END