以下的文章主要介绍的是Oracle 多层游标的嵌套,以及有对Oracle 游标的具体概念的描述,以下文章主要是对Oracle 多层游标的嵌套的实际操作步骤的描述,希望会给你带来一些帮助在此方面。
不是这样的,存储过程中不是非要用游标啊,他有输入和输出参数,只要在过程中做相应的处理就会返回输出参数。游标的作用主要是为了循环提取数据,游标分隐性游标和显性游标。
举个例子(显性游标):
CURSOR 游标名 IS SELECT 语句;
.....
WHILE 游标名% found LOOP
.....
END LOOP;
其中的SELECT 语句提取的是一列值,然后每次取一个进行下面的循环。
(隐性游标):
for 游标名 in (SELECT 语句)loop
.....
.....
END LOOP;
其中的SELECT 语句提取的也是一列值,然后每次取一个进行下面的循环。
Oracle 多层游标嵌套:一般的多层嵌套可以用几个表联合起来查询就能替代,但有时却不能代替,比如,第二个要查询的值是***个查出值后再进行like运算
declare
v_0 number;
v_1 number;
cursor c1 is select productordernumber from his_productorder@pro_crm where productid in (9000045516);
cursor c2 is select cust_order_id from suf_cust_order_q_his where cust_order_num like v_0||'%';
cursor c3 is select * from suf_work_order_q_his where cust_order_id=v_1;
begin
for i in c1 loop
v_0:=i.productordernumber;
for j in c2 loop
v_1:=j.cust_order_id;
for k in c3 loop
dbms_output.put_line(k.work_order_id||' '||k.status);
end loop;
end loop;
end loop;
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
以上的相关内容就是对Oracle 多层游标嵌套的介绍,望你能有所收获。