plsql 游標的使用

2021-10-23 04:20:39 字數 1426 閱讀 6954

1、游標實際上就是乙個集合;

2、游標的屬性

%found  取到值則返回true;沒取到值則返回false;

%notfound  沒取到值則返回true;取到值則返回false;

%isopen  游標是否開啟;

%rowcount  影響的行數;

3、游標數的限制

預設在同乙個會話中,可以開啟300個游標。

4、無引數的游標

例子:迴圈列印出員工表中員工姓名和工資

--定義游標

cursor cemp is  select  t.name ,t.sal from  emp t  ;

dname emp.name%type;

dsal emp.sal%type;

begin

--開啟游標

open cemp;

loop

--取一條資料

fetch cemp into dname,dsal ;

exit when cemp%notfound;

dbms_output.put_line(dname||'的工資:'||dsal);

end loop;

--關閉游標

close cemp;

end;

列印結果:

5、有引數的游標

例:迴圈列印出員工表中部門為1的員工姓名

declare

--定義帶引數的游標

cursor cemp(deptno1 varchar2) is  select  t.name from  emp t  where t.deptno =deptno1;

dname emp.name%type;

begin

--開啟游標

open cemp('1');

loop

fetch cemp into dname ;

exit when cemp%notfound;

dbms_output.put_line(dname);

end loop;

--關閉游標

close cemp;

end;

列印結果:

注:  取游標中一條資料:

fetch 游標名 into 變數名;

這條語句有兩個作用

<1>將當前指標指向的記錄返回;

<2>將指標指向下一條記錄。

PLSQL游標的使用

1.使用無參游標cursor,查詢所有員工的姓名和工資 如果需要遍歷多條記錄時,使用游標cursor,無記錄找到使用cemp notfound declare 定義游標 cursor cemp is select ename,sal from emp 定義變數 vename emp.ename ty...

PL SQL 引用游標的使用

使用引用游標的情景 1.你可能有這樣的需求 讓乙個函式返回乙個游標,然後宿主函式呼叫並使用這個游標 2.open cursor name for v sql statement 當時用動態sql進行多行查詢時,因為此處的cursour name必須是乙個游標變數,所以需要使用。h還可檢視例子 cre...

PL SQL 中顯式游標的使用

一般在pl sql中使用顯式游標有如下的過程 我們以輸出employees表中員工的姓名為例,進行以下的操作 declare v emp first name employees.first name type v emp last name employees.last name type 宣告游...