В этом учебном материале вы узнаете, как использовать оператор FETCH в Oracle/PLSQL c синтаксисом и примерами.
Описание
Цель использования курсора, в большинстве случаев, это получение строк из курсора таким образом, чтобы некоторый тип операций мог быть выполнен на данных. После объявления и открытия курсора, следующим шагом является выборка строк из курсора с помощью оператора FETCH.
Синтаксис
Параметры или аргументы
имя_курсора наименование курсора, из которого вы хотите извлечь строки.
variable_list список переменных, разделенных запятыми, в которые вы хотите сохранить результирующий набор курсора.
Пример
Определим курсор таким образом.
1 2 3 4 5 |
CURSOR c1 IS SELECT course_number FROM courses_tbl WHERE course_name = name_in; |
Команда, которая будет использоваться для выборки данных из этого курсор:
Эта команда выберет первое course_number в переменную cnumber.
Далее функция, которая показывает, как использовать оператор FETCH.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
CREATE OR REPLACE Function FindCourse ( name_in IN varchar2 ) RETURN number IS cnumber number; CURSOR c1 IS SELECT course_number FROM courses_tbl WHERE course_name = name_in; BEGIN OPEN c1; FETCH c1 INTO cnumber; if c1%notfound then cnumber := 9999; end if; CLOSE c1; RETURN cnumber; END; |