Oracle隱式游標和顯式游標

2022-04-06 07:54:35 字數 1316 閱讀 8021

oracle隱式游標和顯式游標,游標是什麼?就是在記憶體開闢的一塊臨時儲存空間。

1.1oracle有常用的哪些隱式游標

1.2 oracle隱式游標演示

-- 隱式游標 (使用的表為oracle預設自帶的emp表)

-- sql%rowcount:影響記錄條數 sql%found:是否有滿足條件的記錄

set serveroutput on;

declare

v_ename a_emp.ename%type;

begin

select ename into v_ename from a_emp where empno=7788;

if sql%found then

dbms_output.put_line(v_ename);

dbms_output.put_line(sql%rowcount);

end if;

end;

/因此,我們所有都資料庫的操作都是存在游標的。

2.1顯式游標語法

cursor 游標名稱 is 選擇語句;

2.2oracle顯式游標演示

-- 顯式游標

declare

-- 建立乙個游標

cursor cursor_a_emp is select empno,ename from a_emp;

-- 其他變數

v_empno a_emp.empno%type; --員工編號

v_ename a_emp.ename%type; --員工姓名

v_rowcount number; -- 員工人數

begin

-- 開啟游標

open cursor_a_emp;

-- 計算游標中儲存記錄的條數

select count(*) into v_rowcount from emp;

-- 迴圈取出游標中的資料

for i in 1..v_rowcount loop

fetch cursor_a_emp into v_empno,v_ename;

dbms_output.put_line(v_empno);

dbms_output.put_line(v_ename);

dbms_output.put_line('*************************====');

end loop;

-- 關閉游標

close cursor_a_emp;

end;

/游標就是相當於乙個臨時表,並將這個表儲存在記憶體中,使用完了就會釋放掉。

2.3顯式游標屬性

對顯式游標 隱式游標的理解

顯式游標主要是用於對查詢語句的處理,尤其是在查詢結果為多條記錄的情況下。1 建立測試表,插入 測試資料 2 編寫儲存過程 create or replace procedure printstudent sname in out varchar,sage in varchar as resultco...

ORACLE顯示游標和隱式游標的區別

隱式游標是oracle為所有操縱語句 包括只返回單行資料的查詢語句 自動宣告和操作的一種游標,顯式游標是由使用者宣告和操作的一種游標。顯式游標操作過程主要包括 宣告游標,開啟游標,提取游標,關閉游標。宣告格式 cursor cursor name arg1 arg1 datatype arg2 ar...

隱式游標返回游標總數

第乙個應用得知更新的行數 1 隱式游標在正常執 況下更新的行數並不知道,可以根據sql rowcount得知更新的行數 set serveroutput on begin update student set first name d where first name like d dbms out...