Riguarda quelle virgolette singole "fantasiose" che hai usato qui:
DBMS_OUTPUT.PUT_LINE('Department Names are :' || DEPARTMENT_NAME);
dovrebbe essere
DBMS_OUTPUT.PUT_LINE('Department Names are :' || DEPARTMENT_NAME);
Come per altri "errori" che hai fatto:senza un loop , il cursore restituisce solo una riga e poi la visualizzi. Ti suggerirei di passare a un cursore for loop in quanto è più semplice da mantenere:
begin
for cur_r in (select department_name from department) loop
dbms_output.put_line(cur_r.department_name);
end loop;
end;
/
Questo è tutto ciò di cui hai bisogno; nessuna sezione di dichiarazione, nessuna apertura o chiusura di un cursore, nessuna preoccupazione di uscire dal ciclo... Oracle lo fa per te.