Vamos a volver a probar:
Código SQL:
Ver originalCREATE OR REPLACE PROCEDURE consultar_asistentes (tema1 VARCHAR2)
AS
CURSOR consulta
IS
SELECT Asistente.nombre
FROM Asistente, Asistir, Conferencia
WHERE Asistente.codigo = Asistir.codAsistente
AND Conferencia.referencia = Asistir.refConferencia
AND Conferencia.tema = tema1;
asistentes_nombres VARCHAR2 (20);
encontrado NUMBER;
BEGIN
OPEN consulta;
encontrado := 0;
LOOP
EXIT WHEN consulta%NOTFOUND;
FETCH consulta INTO asistentes_nombres;
DBMS_OUTPUT.PUT_LINE (Asistentes_nombres);
encontrado := encontrado + 1;
END LOOP;
CLOSE consulta;
IF encontrado <> 0 THEN
DBMS_OUTPUT.PUT_LINE ('Ttoal de assitentes: '||TO_CHAR(encontrado));
END IF;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line (SUBSTR ('Error ' || TO_CHAR (SQLCODE) || ': ' || SQLERRM, 1, 255));
END;