[Oracle] PL/SQL: Leggere i dati di piu' righe di una query

Rispondi
Roberto
Amministratore
Messaggi: 160
Iscritto il: 19/12/2009, 19:30

[Oracle] PL/SQL: Leggere i dati di piu' righe di una query

Messaggio da Roberto »

Vogliamo leggere tutte le righe che ci vengono restituite effettuando una query.

Codice: Seleziona tutto

BEGIN
    FOR dip IN (
                SELECT nome, cognome, email
                FROM dipendente
                WHERE LIVELLO_CONTRATTO is not NULL
                )
                LOOP
                    DBMS_OUTPUT.PUT_LINE(dip.nome || ' ' || dip.cognome || ' ' || dip.email);
                END LOOP;
END;
Questa query ci restituisce tutti i dipendenti che hanno un contratto in azienda e li stampa a video.

In maniera del tutto simile si puo' fare utilizzando i cursori:

Codice: Seleziona tutto

DECLARE
    CURSOR cursore IS
        SELECT nome, cognome, email
        FROM dipendente
        WHERE LIVELLO_CONTRATTO is not NULL;
    
    dip_record cursore%ROWTYPE;
BEGIN
    FOR dip_record IN cursore LOOP
        DBMS_OUTPUT.PUT_LINE(dip_record.nome || ' ' || dip_record.cognome || ' ' || dip_record.email);
    END LOOP;
END;
Roberto Basile
Rispondi