Oracle 多层游标的嵌套实操

以下的文章主要介绍的是Oracle 多层游标的嵌套,以及有对Oracle 游标的具体概念的描述,以下文章主要是对Oracle 多层游标的嵌套的实际操作步骤的描述,希望会给你带来一些帮助在此方面。

不是这样的,存储过程中不是非要用游标啊,他有输入和输出参数,只要在过程中做相应的处理就会返回输出参数。游标的作用主要是为了循环提取数据,游标分隐性游标和显性游标。
举个例子(显性游标):

CURSOR 游标名 IS SELECT 语句;
.....
WHILE 游标名% found LOOP
.....
END LOOP;

其中的SELECT 语句提取的是一列值,然后每次取一个进行下面的循环。

(隐性游标):

for 游标名 in (SELECT 语句)loop
.....

.....
END LOOP;

其中的SELECT 语句提取的也是一列值,然后每次取一个进行下面的循环。

Oracle 多层游标嵌套:一般的多层嵌套可以用几个表联合起来查询就能替代,但有时却不能代替,比如,第二个要查询的值是***个查出值后再进行like运算

 

 
 
 
  1. declare  
  2. v_0 number;  
  3. v_1 number;  
  4. cursor c1 is select productordernumber from his_productorder@pro_crm where productid in (9000045516);  
  5. cursor c2 is select cust_order_id from suf_cust_order_q_his where cust_order_num like v_0||'%';  
  6. cursor c3 is select * from suf_work_order_q_his where cust_order_id=v_1;  
  7. begin  
  8. for i in c1 loop  
  9. v_0:=i.productordernumber;  
  10. for j in c2 loop  
  11. v_1:=j.cust_order_id;  
  12. for k in c3 loop  
  13. dbms_output.put_line(k.work_order_id||' '||k.status);  
  14. end loop;  
  15. end loop;  
  16. end loop;   

以上的相关内容就是对Oracle 多层游标嵌套的介绍,望你能有所收获。

THE END