кодесурса
«PL / SQL

Упражнения для курсора PL / SQL: выведите пунктирную линию в каждую 6-ю строку

script1adsense2code
script1adsense3code

Курсор PL / SQL: Упражнение 45 с решением

Напишите блок в PL / SQL для печати пунктирной линии в каждой 6-й строке.

Пример решения:

Код PL / SQL:

DECLARE
  CURSOR emp_cur IS
    SELECT first_name,last_name FROM employees
    WHERE ROWNUM < 15
    ORDER BY first_name;
  emp_fname employees.first_name%TYPE;
  emp_lname employees.last_name%TYPE;
  i number:=1;
BEGIN
  OPEN emp_cur;
  LOOP
    FETCH emp_cur INTO emp_fname,emp_lname;
    EXIT WHEN emp_cur%NOTFOUND OR emp_cur%NOTFOUND IS NULL;
    DBMS_OUTPUT.PUT_LINE(rpad(emp_cur%ROWCOUNT || '. ',10)|| emp_fname ||' '|| emp_lname);
    IF emp_cur%ROWCOUNT = 6*i THEN
       DBMS_OUTPUT.PUT_LINE('--------------------------------');
	   i:=i+1;
    END IF;
  END LOOP;
  CLOSE emp_cur;
END;
/

Пример вывода:

 SQL> /
1. Алексис Булл
2. Амит Банда
3. Энтони Кабрио
4. Дэвид Бернштейн
5. Дэвид Остин
6. Элизабет Бейтс
--------------------------------
7. Эллен Абель
8. Харрисон Блум
9. Герман Баер
10. Лора Биссо
11. Мож Аткинсон
12. Сара Белл
--------------------------------
13. Шелли Байда
14. Сундар Анд
Процедура PL / SQL успешно завершена.

Блок - схема:

«Блок-схема:

Улучшите этот пример решения и опубликуйте свой код через Disqus

Previous: написать блок в PL / SQL для печати указанного количества строк в таблице.
Далее: Напишите блок в PL / SQL, чтобы отобразить первый отдел с более чем пятью сотрудниками.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code