如何从光标获取下一个和上一个记录?

时间:2010-01-10 07:15:25

标签: oracle plsql oracle9i

我有一个名为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 个答案:

答案 0 :(得分:2)

我不想完全写出答案,因为它是家庭作业而你应该做的工作。游标循环的基本格式之一是:

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

也许这会让你走上正轨。谷歌搜索“甲骨文光标”应该会有几个关于如何使用游标的例子。