oracle 存储过程返回游标怎么写?
Oracle 存储过程返回游标的语法如下:
1.在存储过程中定义一个游标变量。
2.使用 OPEN...FOR SELECT 语句打开游标。
3.使用 RETURN 语句返回游标。
4.关闭游标。
以下是一个例子:
CREATE OR REPLACE PROCEDURE get_employee_cursor (p_deptno IN NUMBER, p_cursor OUT SYS_REFCURSOR) AS BEGIN OPEN p_cursor FOR SELECT * FROM employees WHERE department_id = p_deptno; RETURN; END;
在这个例子中,存储过程 get_employee_cursor 接受一个部门编号作为输入参数,并返回一个包含该部门所有员工信息的游标。要调用此存储过程并使用游标,可以使用以下语句:
DECLARE my_cursor SYS_REFCURSOR; emp_rec employees%ROWTYPE; BEGIN get_employee_cursor(10, my_cursor); LOOP FETCH my_cursor INTO emp_rec; EXIT WHEN my_cursor%NOTFOUND; DBMS_OUTPUT.PUT_LINE(emp_rec.employee_id || ' ' || emp_rec.last_name); END LOOP; CLOSE my_cursor; END;
原文地址: http://www.cveoy.top/t/topic/bgEL 著作权归作者所有。请勿转载和采集!