Вы находитесь на странице: 1из 17

Программирование базы данных на PL / SQL

4-3: Итеративный контроль: базовые циклы


Словарь
Определите словарное слово для каждого определения ниже:

Заключает в себе последовательность операторов


между ключевыми словами LOOP и END LOOP и
должен выполняться хотя бы один раз.

Заявление о прекращении цикла.


Try It / Solve It
1. Какой цели служит цикл в PL / SQL?
Try It / Solve It

2. Перечислите типы циклов в PL / SQL.


Try It / Solve It

3. Какое утверждение используется для явного завершения цикла?


4.Напишите блок PL / SQL для отображения значений
country_id и country_name из таблицы COUNTRIES
для country_id, значения которых находятся в
диапазоне от 1 до 3. Используйте базовый цикл.
Увеличьте переменную с 1 до 3. Используйте
оператор IF, чтобы проверить вашу переменную, и
EXIT из цикла после отображения первых трех
стран.
5. Измените свое решение на вопрос 4
выше, заменив оператор IF на оператор
EXIT .... WHEN.
6. Создайте таблицу СООБЩЕНИЙ и вставьте в нее несколько
строк.

A.Создать таблицу сообщений.

DROP TABLE messages;


CREATE TABLE messages (results NUMBER(2));
B.Напишите блок PL / SQL для вставки
чисел в таблицу MESSAGES. Вставьте
цифры от 1 до 10, исключая 6 и 8.
C. Выполните оператор SELECT, чтобы убедиться, что
ваш блок PL / SQL работает.
Программирование базы данных на PL / SQL
4-4: Итеративное управление: WHILE и FOR Loops
Практические занятия
Словарь
Определите словарное слово для каждого
определения ниже:

Повторяет последовательность операторов до тех пор,


пока контролирующее условие больше не будет TRUE.
Повторяет последовательность операторов до тех пор,
пока не будет выполнено заданное количество
итераций.
Try It / Solve It
1. Напишите блок PL / SQL для отображения значений country_id и
country_name из таблицы COUNTRIES для country_id, значения которых
находятся в диапазоне от 51 до 55. Используйте цикл WHILE. Увеличьте
переменную с 51 до 55. Проверьте свою переменную, чтобы увидеть,
когда она достигнет 55. Выйдите из цикла после того, как вы отобразили 5
стран.
2. Напишите блок PL / SQL, чтобы отобразить
значения country_id и country_name из таблицы
COUNTRIES для country_id, чьи значения
варьируются от 51 до 55 в обратном порядке.
Используйте цикл FOR.
3.Выполните следующие операторы, чтобы
построить таблицу new_emps.

DROP TABLE new_emps;

CREATE TABLE new_emps AS SELECT * FROM

employees; ALTER TABLE new_emps ADD stars

VARCHAR2(50);
A.Создайте блок PL / SQL, который вставляет
звездочку в столбец звезд для каждого целого
1000 долларов зарплаты сотрудника. Например,
если зарплата сотрудника составляет 7800
долларов, будет вставлена строка «*******», а
если зарплата сотрудника составляет 3100
долларов, будет добавлена строка «***».
Используйте следующий код в качестве
отправной точки.
B. Проверьте свой код, используя employee_ids
124 и 142, затем подтвердите результаты.