oracle游標的使用

2021-09-26 04:12:06 字數 1796 閱讀 8284

游標小結:

綜合使用雙層迴圈中使用游標

set serveroutput on;

declare

cursor cdept is select deptno fromdept ; – 10 20 30 部門的集合

dpeptno dept.deptno%type;

– 部門中員工的所有工資

cursor cemp (dno number) is select sal from emp where dpetno =dno;

psal emp.sal%type;

count1 number;

count2 number;

count3 number;

– 各部門工資總額

saltotal number;

begin

open cdept ;

loop --外層迴圈求部門

fetch cdept into pdeptno;

exit when cdept%notfound;

count1 :=0;

count2 :=0;

count3 :=0;

– 遍歷某個部門的所有工資

select sum(sal) into saltotal from emp where deptno = pdeptno;

open cemp(pdeptno) ;

loop

fetch cemp into psal;

exit when cemp%notfound;

ifpsal <2000 then count1 :=count1 +1;

elsif psal >=2000 and psal <4000 then count2:=count2+1;

else count3:=count3+1;

end if;

end loop;

dbms_output.put_line()

end loop;

end ;

2.帶引數的游標

set serveroutput on;

declare

cursor cname(dno number) is select ename from emp where deptno = dno;

pename emp.ename%type

begin

open cname(20)

loop

fetch cname into pename;

exit when cname%notfound;

dbms_output.put_line(pename);

end loop;

close cname;

end3.游標:單引數

set serverotput on;

declare

pname  emp.enmae%type;
begin

select ename into pname from emp where empid = 『20』

dbms_output.put_line()

end ;

游標 :實體物件

delare

emp_info emp%rowtype;

begin

select * into emp_info from emp where empno =7788

dbms_output.put_line(emp_info.ename || emp_info.empno);

end ;

oracle游標的使用

當select語句從資料庫中返回的記錄多餘一條時,就可以使用游標 cursor 游標可以理解為一次訪問乙個的一組記錄。select語句將列提取到游標中,然後根據游標取得記錄。使用游標時需要遵從以下的5個步驟 1 宣告一些變數,用於儲存select語句返回列值 2 宣告游標,並制定select語句 3...

oracle游標的使用

游標 cursor 也稱之為游標,從字面意思理解就是游動的游標。游標是對映在結果集中一行資料上的位置實體。游標是從表中檢索出 結果集,並從中每次指向一條記錄進行互動的機制。cursor 游標名 引數名 資料型別 引數名 資料型別 is select 語句 示例 無參游標 cursor c emp i...

ORACLE游標的使用

1 游標的說明 游標是一種向包含多條資料記錄的結果集中每次讀取一行的機制,逐行處理查詢結果,以程式設計的方式訪問資料庫。可以把游標當成指標,可以指定結果集中的任何位置,然後允許使用者對指定位置的資料進行操作。sql的游標是一種臨時資料庫物件,可以臨時存放資料表中的資料行副本,也可以指向儲存在資料表中...