Как получить следующую и предыдущую запись из курсора? - PullRequest
1 голос
/ 10 января 2010

У меня есть таблица с именем testtransaction, в которой хранятся pervQuestionId и NextQuestionId ... Как вставить записи в эту таблицу через курсор? есть что-то cursoe.getnext () ... как мне это реализовать? Мой код показан ниже:

 create or replace function store_data(disciplineid in char,
                                       NoOfQuestions in number)
  is
  cur_out sys_refcursor;
 begin         
     open cur_out for
     select getguid() tmp,
     QuestionNo,Disciplineid
     from tbliffcoQuestionmaster
     where (DisciplineId=discipline1 AND  rownum <= disc1_NoOfQuestions)
     order by tmp ;
 ///now it should insert records.
end;

1 Ответ

2 голосов
/ 10 января 2010

Я не хочу полностью писать ответ, так как это домашнее задание, и вы должны делать эту работу. Один из основных форматов цикла курсора:

LOOP
   FETCH cursor INTO x;
   EXIT WHEN cursor%NOTFOUND;
   --do something
END LOOP;

Может быть, это приведет вас на правильный путь. Поиск в Google «курсора Oracle» должен дать вам десятки примеров использования курсоров.

...