"2" в
ЗАЯВЛЕНИЕ КУРСОРА: 2
, выдаваемое SQL * Разработчик сообщает вам, что курсор находится во 2-м столбце вывода вашего запроса, Это не означает, что результаты курсора содержат 2 строки.
Замените ваш запрос следующим:
SELECT DNAME, 'XXX' DUMMY, CURSOR(SELECT SALARY, COMMISSSION_PCT
FROM EMP e
WHERE e.did=101)
from dept d
order by dname;
И SQL * Developer будетначать излучать "ЗАЯВЛЕНИЕ КУРСОРА: 3".