17,086
社区成员
发帖
与我相关
我的任务
分享
for v_cursor in (select student_id from students where student_name=v_student_name) loop
open v_cursor for 'select student_id
from students
where student_name='||v_student_name;
loop fetch v_cursor into v_student_id;
exit when v_event_cur%notfound;
//创建包,在包中创建refcursor
CREATE OR REPLACE PACKAGE "TYPES"
AS
TYPE refcursor IS REF CURSOR;
END;
//创建存储过程obtainPartnumberProc
CREATE OR REPLACE PROCEDURE obtainPartnumberProc (
tablename IN VARCHAR2,
obid IN VARCHAR2,
rst IN OUT TYPES.refcursor
)
IS
v_sqlstring VARCHAR2 (1000);
BEGIN
v_sqlstring := 'SELECT PARTNUMBER FROM PDMM31A.'||tablename||' WHERE OBID=''' || obid || '''';
OPEN rst FOR v_sqlstring;
END obtainPartnumberProc;