我是PL / SQL编程的新手。我有一个名为course
的表。当我这样做时:
select * from course where branchid = 'B1';
它返回如下结果:
这是我尝试针对此表运行的PL / SQL程序:
declare
v_branchId course.branchid%TYPE := 'B1';
cursor course_cur is
select * from course where branchid = v_branchId;
v_cursor course_cur%ROWTYPE;
BEGIN
open course_cur;
LOOP
FETCH course_cur into v_cursor;
exit when course_cur%NOTFOUND;
dbms_output.put_line('The course id is ' || v_cursor.courseid );
END LOOP;
END;
/
该程序已成功执行,但它根本不会打印courseid
,即使对于branchid B1
我有几个courseid
。
我犯了错误?
提前致谢。
答案 0 :(得分:1)
set serveroutput on size unlimited
开始使用。如果需要,还要检查包装选项。
http://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_twelve040.htm#SQPUG099
答案 1 :(得分:0)
你可以试试看,让我知道结果:)
declare
cursor course_cur (v_branchId in varchar2) is
select * from course where branchid = v_branchId;
v_cursor course_cur%ROWTYPE;
BEGIN
open course_cur ('B1');
LOOP
FETCH course_cur into v_cursor;
exit when course_cur%NOTFOUND;
dbms_output.put_line('The course id is ' || v_cursor.courseid );
END LOOP;
END;
感谢