Упражнения для курсора PL / SQL: извлечение первых трех строк результирующего набора в три записи с использованием одного и того же явного курсора в разные переменные
Курсор PL / SQL: упражнение 26 с решением
Напишите программу на PL / SQL для извлечения первых трех строк результирующего набора в три записи, используя один и тот же явный курсор для разных переменных.
Пример решения:
Код PL / SQL:
DECLARE
CURSOR empcur IS
SELECT e.first_name,e.job_id, j.job_title
FROM employees e, jobs j
WHERE e.job_id = j.job_id AND e.manager_id = 148
ORDER BY last_name;
emp_job1 empcur%ROWTYPE;
emp_job2 empcur%ROWTYPE;
emp_job3 empcur%ROWTYPE;
BEGIN
OPEN empcur;
FETCH empcur INTO emp_job1;
FETCH empcur INTO emp_job2;
FETCH empcur INTO emp_job3;
CLOSE empcur;
DBMS_OUTPUT.PUT_LINE(Rpad(emp_job1.first_name, 25, ' ')||emp_job1.job_title || ' (' || emp_job1.job_id || ')');
DBMS_OUTPUT.PUT_LINE(Rpad(emp_job2.first_name, 25, ' ')||emp_job2.job_title || ' (' || emp_job2.job_id || ')');
DBMS_OUTPUT.PUT_LINE(Rpad(emp_job3.first_name, 25, ' ')||emp_job3.job_title || ' (' || emp_job3.job_id || ')');
END;
/
Пример вывода:
SQL> / Элизабет Торговый представитель (SA_REP) Торговый представитель Harrison (SA_REP) Торговый представитель Tayler (SA_REP) Процедура PL / SQL успешно завершена.
Блок - схема:
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу на PL / SQL, чтобы показать использование выборки по одной записи за раз, используя оператор извлечения внутри цикла.
Далее: Напишите блок PL / SQL, чтобы показать использование переменной в явном запросе курсора, и ни один набор результатов не будет затронут, несмотря на то, что значение переменной увеличивается после каждой выборки.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования