帮看一下怎么不好使呢?

SQL code
CREATE DEFINER=`root`@`localhost` PROCEDURE `pro_sort2()`
BEGIN   
  DECLARE memberId INT ;   
  DECLARE cur_sort INT ;    
  DECLARE b_sort INT ;  
  DECLARE lnumber INT ;       
 DECLARE sort INT ;  
  DECLARE id INT ;   
  DECLARE STOP INT DEFAULT 0;   
  DECLARE cnt INT DEFAULT 0;   
  DECLARE tempId INT DEFAULT 0;  
   DECLARE maxId INT DEFAULT 0;          
  DECLARE flag INT DEFAULT 0;     
  DECLARE tId INT DEFAULT 0;   
 DECLARE asql  varchar(500); 

 DECLARE cur CURSOR FOR select id,memberId , sort from noGoodsPoint g  inner join memberinfo m on m.memberid=g.memberid order by m.points desc     ;
 DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET STOP=1;   
 set b_sort=0;
  SELECT loopNumber INTO lnumber FROM tbl_loop;     
            OPEN cur;     
           FETCH cur INTO id, memberId,cur_sort ;   
          WHILE STOP <> 1 DO           
               set sort=0  ;
              -- select sort into sort from nogoodspoint; --where sort<  cur_sort and memberId=  memberId order by sort   limit 0,1       
               if cur_sort<(lnumber+sort) then 
                    update nogoodspoint set sort= sort+lnumber where id=id    ;             
               else                
                    update nogoodspoint set sort=b_sort+1 where id=id;
               end if;
                
                 set b_sort=sort;              

 
                FETCH cur INTO id, memberId,cur_sort ;   
      END WHILE;  
     CLOSE cur;     
    end;    


作者: star20029399   发布时间: 2011-06-03

问题是什么? 创建的时候提示出错?还是执行的结果没有达到预期要求?

问题说明越详细,回答也会越准确!参见如何提问。(提问的智慧)
 

作者: ACMAIN_CHM   发布时间: 2011-06-03