Error when trying to Declare a Cursor

I am getting a syntax error with the below code but can't figure out why.  Anyone know why when trying to Declare a variable or cursor it doesn't work?

 

Create TEMPORARY TABLE Foo (
MyDate datetime not null
, Amount Decimal(12,2)
) Engine=Memory;

DECLARE bDone INT DEFAULT false;
DECLARE fme CURSOR FOR
SELECT `Period Start`, `Period End`, `Monthly Amort` FROM `it_prepaid_software`;

DECLARE CONTINUE HANDLER FOR NOT FOUND SET bDone = 1;

OPEN fme;

SET bDone = 0;
REPEAT
FETCH fme INTO periodStart, periodEnd, monthAmount;

WHILE(periodStart < periodEnd) DO
INSERT INTO Foo VALUES (periodStart, monthAmount);
date_add(periodStart, INTERVAL 1 Month);

END WHILE;
UNTIL bDone END REPEAT;

CLOSE fme;
SELECT * FROM Foo;

Comments

  • Shot in the dark here, but should it be DECLARE fme CURSOR IS... ?

     

    Aaron
    MajorDomo @ Merit Medical

    **Say "Thanks" by clicking the heart in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"