直接在if p_a > 1 then 后处理p_a,p_b就行了阿
你要怎么处理阿

解决方案 »

  1.   

    我做了上述操作后确实可以实现处理p_a,p_b,但我在oracle中测试的时候只能看见最后一条记录的处理结果。
    是不是前几条都处理过了。只能显示出最后一条记录的处理结果呢?
      

  2.   

    create or replace procedure Sp_UpdateWddkdp00
    (Job varchar2,
    Code varchar2,
    IssTime Varchar2,
    EngName varchar2) is
    begin
        FOR R2 IN(Select * From HuaYang.Engprocess00 where eng_job_no = Job and eng_Pro_name =EngName order by Eng_EDT_NUM)
         LOOP
          for R3 in(Select * From wddkdp00 where ddd_pro_code = R2.eng_pro_code and ddd_job_on = Job)
          loop
            if R3.ddd_dpf_date >= to_date(IssTime,'YYYY-MM-DD') THEN 
               r3.DDD_PRO_CODE := Code ;       
            end if;
          end loop; 
        end loop; 
    end Sp_UpdateWddkdp00;
      

  3.   

    open cur for select a,b from c;
        for v_row in cur loop 
            if row .p_a > 1 then 
               ...
            end if;
        end loop;
        close cur;