Упражнения на курсорах PL / SQL: Распечатайте список менеджеров и названия отделов
Курсор PL / SQL: упражнение 21 с решением
Напишите программу на PL / SQL для распечатки списка менеджеров и названия отделов.
Пример решения:
Код PL / SQL:
DECLARE
CURSOR cur_mgr IS
SELECT first_name,
last_name,
department_name
FROM employees e
INNER JOIN departments d ON d.manager_id = e.employee_id;
v_mgr cur_mgr%ROWTYPE;
BEGIN
OPEN cur_mgr;
LOOP
-- fetch information from cursor into record
FETCH cur_mgr INTO v_mgr;
EXIT WHEN cur_mgr%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(v_mgr.department_name || ' :: ' ||
v_mgr.first_name || ' ' ||
v_mgr.last_name);
END LOOP;
CLOSE cur_mgr;
END;
/
Пример вывода:
SQL> / Executive :: Стивен Кинг IT :: Александр Хунольд Финансы :: Нэнси Гринберг Закупки :: Ден Рафаэли Доставка :: Адам Фрипп Продажи :: Джон Рассел Администрация :: Дженнифер Уэйлен Маркетинг :: Михаэль Хартштейн Работа с персоналом :: Сьюзен Маврис Связи с общественностью :: Герман Баер Бухгалтерия :: Шелли Хиггинс Процедура PL / SQL успешно завершена.
Блок - схема:
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу в PL / SQL для записи FETCH с вложенными курсорами, используя Cursor FOR Loops.
Далее: написать программу на PL / SQL для вставки данных в две таблицы из одной таблицы с помощью курсора.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code