Oracle函数/存储过程返回结果集(游标)
1、函数返回结果集(游标)
-- 函数 CREATE OR REPLACE FUNCTION OUTTEST ( I_NAME IN VARCHAR2 --接收输入参数 ) RETURN SYS_REFCURSOR AS RESULT_SET SYS_REFCURSOR; --返回游标 X_SQL VARCHAR2(200); BEGIN X_SQL :='SELECT ID,NAME FROM TEST WHERE NAME LIKE ''%' || I_NAME||'%''' ; --生成SQL语句 OPEN RESULT_SET FOR X_SQL; RETURN RESULT_SET; --返回游标 END OUTTEST;
输出:
SELECT OUTTEST('C') FROM DUAL;

2、存储过程返回结果集(游标)
-- 存储过程 CREATE OR REPLACE PROCEDURE P_TEST( P_CUR OUT SYS_REFCURSOR -- 游标出参 ) AS BEGIN OPEN P_CUR FOR SELECT * FROM TEST; END P_TEST;
输出:
在sqlplus执行下面语句
VAR R REFCURSOR; EXEC P_TEST(:R); SELECT :R FROM DUAL;

作者:小念
本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。

浙公网安备 33010602011771号