DECLARE ymd DATE;
DECLARE cur1 CURSOR FOR SELECT a1,a2 FROM schedule WHERE day=ymd;出错:
ERROR 1337 (42000): Variable or condition declaration after cursor or handler declaration游标里加条件判断该如何写?

解决方案 »

  1.   

    DECLARE cur1 CURSOR FOR SELECT a1,a2 FROM schedule WHERE day=ymd;
    DECLARE ymd DATE;
      

  2.   

    DECLARE cur1 CURSOR FOR SELECT a1,a2 FROM schedule WHERE day=ymd;
    open cur1 
    DECLARE ymd DATE;
    .
    .
    .
      

  3.   

    楼上的老大,换顺序也不行。DECLARE cur1 CURSOR FOR SELECT a1,a2 FROM schedule WHERE day='2007-07-11';
    我在游标里给条件赋值都不行SELECT a1,a2 FROM schedule WHERE day='2007-07-11'肯定没问题。查那个参考手册,例子是不带条件的,对此没有任何说明。郁闷!
      

  4.   

    Sorry, 是自己的错!关键是这句→ DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;
    一定要把它放在游标定义的后面。DECLARE ymd DATE;
    DECLARE done INT DEFAULT 0;
    DECLARE cur1 CURSOR FOR SELECT a1,a2 FROM schedule WHERE day=ymd;
    DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;