PL/SQL 遊標 (實驗七)
阿新 • • 發佈:2017-11-28
輸出 姓名 blog lec -m %rowtype .com 技術分享 begin
顯示格式:
部 門 號: XXX
部門名稱: XXX
所在位置: XXX
PL/SQL 遊標
emp、dept 目標表結構及數據
要求
基於部門表建立遊標dept_cursor1,使用記錄變量接收遊標數據,輸出部門表信息;
顯示格式:
部 門 號: XXX
部門名稱: XXX
所在位置: XXX基於部門表建立遊標dept_cursor2,使用標量變量接收遊標數據,輸出部門表信息;
顯示格式:部門號:XXX 部門名稱:XXX 所在位置:XXX基於雇員表建立遊標emp_cursor,根據用戶輸入的部門號,輸出該部門薪水在5000元上的雇員姓名、薪水.
顯示格式:雇員姓名:XXX 薪水:XXX
1.基於部門表建立遊標dept_cursor1,使用記錄變量接收遊標數據,輸出部門表信息;
部 門 號: XXX
部門名稱: XXX
所在位置: XXX
declare cursor dept_cursor1 is select dno,dname,loc from dept; dept_record dept%rowtype; begin open dept_cursor1; loop fetch dept_cursor1 into dept_record; exit when dept_cursor1%notfound or dept_cursor1%rowcount > 3; dbms_output.put_line('部門號:'||dept_record.dno); dbms_output.put_line('部門名稱:'||dept_record.dname); dbms_output.put_line('所在位置:'||dept_record.loc); end loop; close dept_cursor1; end;
2.基於部門表建立遊標dept_cursor2,使用標量變量接收遊標數據,輸出部門表信息;
顯示格式:部門號:XXX 部門名稱:XXX 所在位置:XXX
declare cursor dept_cursor2 is select dno,dname,loc from dept; v_deptno dept.dno%type; v_deptname dept.dname%type; v_deptloc dept.loc%type; begin open dept_cursor2; loop fetch dept_cursor2 into v_deptno,v_deptname,v_deptloc; exit when dept_cursor2%notfound or dept_cursor2%rowcount > 3; dbms_output.put_line('部門號:'||v_deptno||',部門名稱:'||v_deptname||',所在地:'||v_deptloc); end loop; close dept_cursor2; end;
3.基於雇員表建立遊標emp_cursor,根據用戶輸入的部門號,輸出該部門薪水在5000元上的雇員姓名、薪水.
顯示格式:雇員姓名:XXX 薪水:XXX
declare
cursor emp_cursor is
select ename,sal from emp where dno = &dno;
v_ename emp.ename%type;
v_sal emp.sal%type;
begin
open emp_cursor;
loop
fetch emp_cursor into v_ename,v_sal;
exit when emp_cursor%notfound;
if v_sal > 5000
then
dbms_output.put_line('雇員姓名:'||v_ename||',薪水:'||v_sal);
end if;
end loop;
close emp_cursor;
end;
PL/SQL 遊標 (實驗七)