游標(biāo)是什么?就是在內(nèi)存開辟的一塊臨時(shí)存儲(chǔ)空間。
1.Oracle隱式游標(biāo)
1.1Oracle有常用的哪些隱式游標(biāo)
1.2 Oracle隱式游標(biāo)演示
-- 隱式游標(biāo) (使用的表為Oracle默認(rèn)自帶的emp表) -- sql%rowcount:影響記錄條數(shù) 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; /
因此,我們所有都數(shù)據(jù)庫的操作都是存在游標(biāo)的。
--------------------------------------------------------------------------------
2.Oracle顯式游標(biāo)
2.1顯式游標(biāo)語法
cursor 游標(biāo)名稱 is 選擇語句;
2.2Oracle顯式游標(biāo)演示
-- 顯式游標(biāo) declare -- 創(chuàng)建一個(gè)游標(biāo) cursor cursor_a_emp is select empno,ename from a_emp; -- 其他變量 v_empno a_emp.empno%type; --員工編號(hào) v_ename a_emp.ename%type; --員工姓名 v_rowcount number; -- 員工人數(shù) begin -- 打開游標(biāo) open cursor_a_emp; -- 計(jì)算游標(biāo)中存儲(chǔ)記錄的條數(shù) select count(*) into v_rowcount from emp; -- 循環(huán)取出游標(biāo)中的數(shù)據(jù) 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; -- 關(guān)閉游標(biāo) close cursor_a_emp; end; /
游標(biāo)就是相當(dāng)于一個(gè)臨時(shí)表,并將這個(gè)表存儲(chǔ)在內(nèi)存中,使用完了就會(huì)釋放掉。
2.3顯式游標(biāo)屬性
以上所述是小編給大家介紹的Oracle隱式游標(biāo)和顯式游標(biāo)知識(shí),希望對(duì)大家有所幫助,如果大家有任何問題歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
標(biāo)簽:中衛(wèi) 遼源 昭通 寧波 紹興 自貢 百色 海東
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《詳解Oracle隱式游標(biāo)和顯式游標(biāo)》,本文關(guān)鍵詞 詳解,Oracle,隱式,游標(biāo),和,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。