CREATE OR REPLACE
PROCEDURE P_2
AS
--Creamos cursor con sentencia dentro
CURSOR CUR_1 IS
SELECT DISTINCT APELLIDO,ESTADO
FROM PERSONA P
INNER JOIN EMPLEADO EM ON EM.CODEMP = P.CODPER
INNER JOIN ORDENMEDICA O ON O.CODMED = EM.CODEMP
ORDER BY APELLIDO;
--Creamos variables
APEL VARCHAR2(25);
ESTAD VARCHAR2(1);
BEGIN
--Abrimos el cursor
OPEN CUR_1;
/* Recorremos a primera posición y
almacenamos en las variables */
FETCH CUR_1 INTO APEL,ESTAD;
--Creamos bucle mientras haya loop
WHILE CUR_1 % FOUND LOOP
--Mostramos por pantalla
DBMS_OUTPUT.PUT_LINE(APEL||'*'||ESTAD);
/* Recorremos a siguiente posicion y
almacenamos en las variables */
FETCH CUR_1 INTO APEL,ESTAD;
--Terminamos loop
END LOOP;
--Cerramos cursor
CLOSE CUR_1;
--Cerramos procedimiento
END;
Diagrama:
0 comentarios:
Publicar un comentario