Cursor envenenado :(
Publicado por Jose (7 intervenciones) el 27/01/2018 14:59:44
Hola amigos, bueno aquí os traigo un problema que me lleva comiendo la cabeza toda la santa semana y lo tengo que entregar el lunes y ya tiro la toalla..... (Aunque la gente dirá que nunca se tira, pero es eso o me tiro yo por un puente jajaja)
En la foto adjunta va lo que tiene que hacer el cursor, y no soy capaz de hacerlo :( a ver si vosotros me podéis echar una mano aunque sea al cuello por favor....
Os dejo el código que tengo por ahora aunque no creo que sirva de mucho pero bueno, algo es algo....
Dejo también la BD donde hay que probarlo.
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
47
48
DROP PROCEDURE pr_informe;
DELIMITER //
CREATE PROCEDURE pr_mostrar(IN p_nif CHAR(9))
COMMENT 'Informe de prestamos por NIF'
BEGIN
DECLARE v_p_nif CHAR(9) DEFAULT 0;
DECLARE v_cont INT DEFAULT 0;
DECLARE v_eof INT DEFAULT 0;
DECLARE cu_informe CURSOR FOR
SELECT nif,fecha_prestamo
FROM prestamos
WHERE nif=p_nif;
DECLARE CONTINUE HANDLER
FOR NOT FOUND SET v_eof=1;
OPEN cu_informe;
SET v_eof=0;
SET v_cont=1;
FETCH cu_informe
INTO v_p_nif;
WHILE v_eof=0 DO
BEGIN
IF p_nif=nif THEN
SELECT v_p_nif AS 'Total de Préstamos';
ELSE IF p_nif='TODOS' THEN
SELECT v_p_nif;
END IF;
END IF;
FETCH cu_informe
INTO v_p_nif;
END ;
END WHILE;
CLOSE cu_informe;
END //
DELIMITER ;
CALL pr_informe('74381725T');
- BD_Biblioteca.rar(2,2 KB)
Valora esta pregunta


0