Ik ben dus bezig een query te maken die in een betalingen tabel de betalingen voor een sportvereniging toevoegd. Ik krijg hierbij alleen constant een foutmelding over dat de cursor not declared is, ik weet zelf gewoon nietmeer waar het aan kan liggen 
Waar moet ik de fout zoeken, de helpfile van sybase en google boden geen uitkomst. Ik snap er werkelijkniets van
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
| BEGIN
DECLARE lid CURSOR FOR
SELECT lidnr, periode
FROM leden;
DECLARE lidnummer INT;
DECLARE periode Char(1);
DECLARE jaar INT;
DECLARE per INT;
SET jaar = (SELECT datepart (Year,getdate()));
OPEN lid;
OPEN betaaldatum;
betalinginvoeren:
LOOP
FETCH NEXT lid
INTO lidnummer, periode;
SET per = 1;
IF ( SQLCODE = SQLE_NOTFOUND) THEN
LEAVE betalinginvoeren;
END IF;
IF periode = 'M' THEN
WHILE per < 12
LOOP
INSERT INTO betalingen (lidnr,per,jaar,bedrag,betaald)
VALUES (lidnummer,per,jaar,110,0);
SET per = per +1;
END LOOP;
ELSEIF periode = 'K' THEN
WHILE per < 4
LOOP
INSERT INTO betalingen (lidnr,per,jaar,bedrag,betaald)
VALUES (lidnummer,per,jaar,110,0);
SET per = per +1;
END LOOP;
ELSEIF periode = 'J' THEN
INSERT INTO betalingen (lidnr,per,jaar,bedrag,betaald)
VALUES (lidnummer,per,jaar,110,0);
ELSE
LEAVE betalinginvoeren;
END IF;
END LOOP betalinginvoeren;
CLOSE lid;
END |
Waar moet ik de fout zoeken, de helpfile van sybase en google boden geen uitkomst. Ik snap er werkelijkniets van