当前位置:Gxlcms > mysql > Oralce中返回结果集的存储过程refcursor

Oralce中返回结果集的存储过程refcursor

时间:2021-07-01 10:21:17 帮助过:35人阅读

由于Oracle的存储过程没有返回值,它的所有返回值都是通过out参数来代替的,列表同样也不例外,但是由于是集合,所以不能用一般的

有返回值的存储过程(列表 结果集)
案例:编写一个过程,输入部门编号,返回该部门所有员工的信息。

对该题的分析如下:
由于Oracle的存储过程没有返回值,它的所有返回值都是通过out参数来代替的,列表同样也不例外,但是由于是集合,所以不能用一般的参数,必须要用package,所以分两部分:

1)建一个包。如下:

create or replace package testpackage AS TYPE test_cursor is ref cursor;
end testpackage;

在该包中我定义了一个游标类型 test_cursor

下面就是写创建过程了
create or replace procedure chenchuang_pro
(chenNo in number p_cursor out testpackage.test_cursor) is
begin
open p_cursor for select * from emp wheredeptno=chenNo;
end;

ref cursor:游标类型

linux

人气教程排行