日期:2014-05-17  浏览次数:20961 次

基础 Cursor 的疑问
SQL code

declare 
    Cursor cur_policy is
     select cm.policy_code, cm.applicant_id, cm.period_prem,cm.bank_code,cm.bank_account
     from t_contract_master cm
     where cm.liability_state = 2
     and cm.policy_type = 1
     and cm.policy_cate in ('2','3','4')
     and rownum < 5
     order by cm.policy_code desc;
Begin
   For rec_Policy in cur_policy loop
       Dbms_Output.put_line(rec_policy.policy_code);
   end loop;
   Exception 
     when others then
         Dbms_Output.put_line(Sqlerrm);
         
end;




1.能不能解释下这句SQL语句的意思呢
2.Cursor在这里起到什么作用
For rec_Policy in cur_policy loop cur_policy 在这里的意义。
3.Exception 
  when others then
  Dbms_Output.put_line(Sqlerrm);
这句的详细意思

------解决方案--------------------
探讨

1.Cursor 是一个游标结果集,select.... 查询出来的结果放到游标 cur_policy里, 2.For rec_Policy in cur_policy loop cur_policy :循环迭代 cur_policy里的数据放到变量 rec_Policy 里
3.如果出现问题的话抛出异常

------解决方案--------------------
探讨
Java code

declare
Cursor cur_policy is --定义一个游标变量
select cm.policy_code, cm.applicant_id, cm.period_prem,cm.bank_code,cm.bank_account
from t_contract_master cm
where cm.li……

------解决方案--------------------
回复于:2012-05-15 17:05:151.Cursor 是一个游标结果集,select.... 查询出来的结果放到游标 cur_policy里, 2.For rec_Policy in cur_policy loop cur_policy :循环迭代 cur_policy里的数据放到变量 rec_Policy 里
3.如果出现问题的话抛出异常