Begin
OPEN emp_cursor; LOOP
FETCH emp_cursor INTO emp_record; EXIT WHEN emp_cursor%NOTFOUND …..
CURSOR FOR LOOPS 例: DECLARE
CURSOR emp_cursor IS selec * from emp Begin
FOR emp_record IN emp_cursor LOOP IF emp_record.deportno =1 then
DBMS_OUTPUT.PUT_LINE(emp_record.ename ||emp_record….); END IF;
END LOOP; END; --其中,CURSOR可以用后面的select語句代替。 練習:
create or replace procedure get_salary(a in number) is begin
-- SELECT * FROM (select A.*,rownum RN from emp A, dual) B WHERE RN<=2
for r_sal in (SELECT distinct salary FROM (select A.salary,rownum RN from emp A, dual) B WHERE RN<=a ) loop
dbms_output.put_line(to_char(a)||': '||to_char(r_sal.salary)); --insert into sal_table(salary) values(r_sal.salary); end loop; end;
--------------------------------------------------------------------- begin
get_salary(10); end;
Chapter 7
Advanced explicit cursor concepts
After completing this lesson, you should be able to do the following: Write a cursor that uses parameters
Determine when a FOR UPDATE clause in a cursor is required Determine when to use the WHERE CURRENT OF clause Write a cursor that uses a subquery
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新人文社科Oracle9i笔记1(20)全文阅读和word下载服务。
相关推荐: