Oracle - ERROR 1328 (HY000): Incorrect number of FETCH variables

 
Vista:
sin imagen de perfil

ERROR 1328 (HY000): Incorrect number of FETCH variables

Publicado por Juan Carlos (1 intervención) el 17/06/2018 17:42:19
Hola Buenas tardes
he creado este procedimiento
pero a la hora de llamarlo me salta el error numero de variables fetch incorrecto
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
43
44
45
46
DELIMITER ;;
DROP PROCEDURE IF EXISTS notas ;;
CREATE PROCEDURE notas (IN rNota INT)
 
BEGIN
    DECLARE contador INT DEFAULT 0;
    DECLARE wNota INT (2);
	DECLARE wK INT(11);
	DECLARE fin BOOL DEFAULT 0;
 
    DECLARE Curnota CURSOR FOR
    SELECT
	     alsig.Nota
    FROM
       	 eAlumno al,
		 euniversidad uni,
		 eAsignatura asig,
		 ralumnoprofesorasignatura alsig,
		 eLocalidad loc,
		 eprovincia prov
	where
         al.xuniversidad=uni.k and
         alsig.xalumno=al.k and
         alsig.xasignatura=asig.k and
         uni.xlocalidad=loc.k  and
		 loc.xprovincia=prov.k and
        (prov.ascomunidad='Galicia') and
		(asig.asNb='fisica');
 
DECLARE CONTINUE HANDLER FOR NOT FOUND SET fin=1;
 
	OPEN Curnota;
    FETCH Curnota INTO wNota,wk;
 
    WHILE !(fin) DO
 
		UPDATE ralumnoprofesorasignatura
		set Nota=Nota-rNota
		WHERE (wk=k);
 
	END WHILE;
 
 
  CLOSE Curnota;
END;;
DELIMITER ;


Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 586
Oro
Ha mantenido su posición en Oracle (en relación al último mes)
Gráfica de Oracle

ERROR 1328 (HY000): Incorrect number of FETCH variables

Publicado por Rafael (328 intervenciones) el 18/06/2018 08:57:48
Pues mas claro ni el agua no???

Tu cursor lo declaras para devolver 1 columna...
1
2
SELECT
	     alsig.Nota

Cuando lo abres y haces el FETCH quieres obtener 2 columnas...
1
FETCH Curnota INTO wNota,wk;

wNota y wk...

Y dices..
me salta el error numero de variables fetch incorrecto

Lo es no????
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar