2010-01-10 1 views
1

У меня есть таблица с именем 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

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

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

Возможно, это поможет вам на правильном пути. Googling для «курсора Oracle» должен содержать десятки примеров использования курсоров.