如何打開和關(guān)閉Oracle游標(biāo)
以O(shè)racle顯示游標(biāo)為主,本文講述了如何打開Oracle游標(biāo),以及相關(guān)的實(shí)際操作,下面和小編一起來看看吧!
打開Oracle游標(biāo)
使用游標(biāo)中的值之前應(yīng)該首先dewengz打開游標(biāo),打開游標(biāo)初始化查詢處理。打開游標(biāo)的`語法是:
1.OPEN cursor_name
cursor_name是在聲明部分定義的游標(biāo)名。
例:
1.OPEN C_EMP;
關(guān)閉Oracle游標(biāo)
語法:
1.CLOSE cursor_name
例:
1.CLOSE C_EMP;
關(guān)閉Oracle游標(biāo)
從游標(biāo)得到一行數(shù)據(jù)使用FETCH命令。每一次提取數(shù)據(jù)后,游標(biāo)都指向結(jié)果集的下一行。語法如下:
1.FETCH cursor_name INTO variable[,variable,...]
對于SELECT定義的Oracle游標(biāo)的每一列,F(xiàn)ETCH變量列表都應(yīng)該有一個變量與之相對應(yīng),變量的類型也要相同。
例:
1.SET SERVERIUTPUT ON
2.DECLARE
3.v_ename EMP.ENAME%TYPE;
4.v_salary EMP.SALARY%TYPE;
5.CURSOR c_emp IS SELECT ename,salary FROM emp;
6.BEGIN
7.OPEN c_emp;
8.FETCH c_emp INTO v_ename,v_salary;
9.DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename
10.||'is'|| v_salary);
11.FETCH c_emp INTO v_ename,v_salary;
12.DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename
13.||'is'|| v_salary);
14.FETCH c_emp INTO v_ename,v_salary;
15.DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename
16.||'is'|| v_salary);
17.CLOSE c_emp;
18.END
這段代碼無疑是非常麻煩的,如果有多行返回結(jié)果,可以使用循環(huán)并用Oracle游標(biāo)屬性為結(jié)束循環(huán)的條件,以這種方式提取數(shù)據(jù),程序的可讀性和簡潔性都大為提高,下面我們使用循環(huán)重新寫上面的程序:
1.SET SERVERIUTPUT ON
2.DECLARE
3.v_ename EMP.ENAME%TYPE;
4.v_salary EMP.SALARY%TYPE;
5.CURSOR c_emp IS SELECT ename,salary FROM emp;
6.BEGIN
7.OPEN c_emp;
8.LOOP
9.FETCH c_emp INTO v_ename,v_salary;
10.EXIT WHEN c_emp%NOTFOUND;
11.DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename
12.||'is'|| v_salary);
13.END
【如何打開和關(guān)閉Oracle游標(biāo)】相關(guān)文章:
oracle10g關(guān)閉和打開自動收集統(tǒng)計(jì)信息的方法12-17
Dreamweaver打開和關(guān)閉錯誤怎么辦10-25
Oracle DBA啟動和關(guān)閉例程精選試題及答案10-23
如何使用游標(biāo)卡尺-游標(biāo)卡尺的使用方法及應(yīng)用范圍05-17
如何打開喉嚨唱歌08-09
Oracle認(rèn)證的價值和途徑11-02
Oracle認(rèn)證的作用和考試10-15
windows如何打開wifi功能?01-01