码迷,mamicode.com
首页 > 数据库 > 详细

mysql 存储过程 游标 判断游标是否为空

时间:2016-08-19 19:02:50      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:

BEGIN
	DECLARE id long;
	DECLARE Done INT DEFAULT 0;
	DECLARE cashamount DECIMAL(10,2) DEFAULT 0.00;
	DECLARE scorecamount 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		info_black	WHERE userid=id;
			DELETE FROM		info_consignee	  	WHERE userid=id;
			

			SET	cashamount = (SELECT balance	FROM  trade_account AS b WHERE  b.ownertype = 1 AND b.ownerid = id	AND accounttype = 1);
			UPDATE trade_account SET balance = balance + cashamount WHERE  accountid = 6500000000000000;
			
			SET scorecamount = (SELECT balance	FROM  trade_account AS b WHERE  b.ownertype = 1 AND b.ownerid = id	AND accounttype = 0);
			UPDATE trade_account SET balance = balance + scorecamount WHERE  accountid = 3500000000000000;

			DELETE a,b FROM trade_cashtrade 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);
			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;

	CLOSE userids;
END

  

mysql 存储过程 游标 判断游标是否为空

标签:

原文地址:http://www.cnblogs.com/zhifengge/p/5788472.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!