真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么使用PostgreSQL游標(biāo)

這篇文章主要介紹“怎么使用PostgreSQL游標(biāo)”,在日常操作中,相信很多人在怎么使用PostgreSQL游標(biāo)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么使用PostgreSQL游標(biāo)”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、沁縣網(wǎng)站維護(hù)、網(wǎng)站推廣。

一、說明

游標(biāo)字面理解就是游動的光標(biāo)。

用數(shù)據(jù)庫語言來描述:游標(biāo)是映射在結(jié)果集中一行數(shù)據(jù)上的位置實(shí)體,有了游標(biāo)用戶就可以訪問結(jié)果集中的任意一行數(shù)據(jù)了,將游標(biāo)放置到某行后,即可對該行數(shù)據(jù)進(jìn)行操作,例如提取當(dāng)前行的數(shù)據(jù)等等。

二、分類

  • 顯式游標(biāo)

    用CURSOR...IS 命令定義的游標(biāo),它可以對查詢語句(SELECT)返回的多條記錄進(jìn)行處理。

  • 隱式游標(biāo)

    是在執(zhí)行插入(INSERT)、刪除(DELETE)、修改(UPDATE)和返回單條記錄的查詢(SELECT)語句時有PL/SQL自動定義的。

三、屬性

Oracle 游標(biāo)有4個屬性: %ISOPEN , %FOUND , %NOTFOUND, %ROWCOUNT

  • %ISOPEN 判斷游標(biāo)是否被打開,如果打開%ISOPEN 等于true,否則等于false

  • %FOUND %NOTFOUND 判斷游標(biāo)所在的行是否有效,如果有效,則%FOUNDD等于true,否則等于false

  • %ROWCOUNT 返回當(dāng)前位置為止游標(biāo)讀取的記錄行數(shù)。

四、使用

  • 聲明游標(biāo)

    CURSOR emp_info(vartype number) is select * from emp;

  • 打開游標(biāo)

    open emp_info;

  • 讀取游標(biāo)

    fetch mycur into varno,varprice;

  • 關(guān)閉游標(biāo)

    close emp_info;

五、顯示游標(biāo)遍歷

  1. 方法一

    DECLARE  
      V_EMP_INFO EMP%ROWTYPE;  
      CURSOR EMP_INFO IS  
        SELECT * FROM EMP;   --1、聲明游標(biāo)  
    BEGIN  
      OPEN EMP_INFO;         --2、打開游標(biāo),傳遞參數(shù)值    
      LOOP  
        FETCH EMP_INFO INTO V_EMP_INFO;   --3、提取游標(biāo)fetch into    
        IF EMP_INFO%FOUND THEN  
          DBMS_OUTPUT.PUT_LINE(V_EMP_INFO.ENAME || '的雇傭日期是' ||  
                               V_EMP_INFO.HIREDATE);  
        ELSE  
          DBMS_OUTPUT.PUT_LINE('已經(jīng)處理完結(jié)果集了');  
          EXIT;  
        END IF;  
      END LOOP;  
      CLOSE EMP_INFO;       --4、關(guān)閉游標(biāo)  
    END;
  2. 方法二

    DECLARE  
      V_EMP_INFO EMP%ROWTYPE;  
      CURSOR EMP_INFO IS  
        SELECT * FROM EMP; --1、聲明游標(biāo)  
    BEGIN  
      OPEN EMP_INFO; --2、打開游標(biāo),傳遞參數(shù)值    
      LOOP  
        FETCH EMP_INFO INTO V_EMP_INFO; --3、提取游標(biāo)fetch into  
        EXIT WHEN EMP_INFO%NOTFOUND;  
        DBMS_OUTPUT.PUT_LINE(V_EMP_INFO.ENAME || '的雇傭日期是' ||  
                             V_EMP_INFO.HIREDATE);  
      END LOOP;  
      DBMS_OUTPUT.PUT_LINE('已經(jīng)處理完結(jié)果集了');  
      CLOSE EMP_INFO; --4、關(guān)閉游標(biāo)  
    END;
    /
  3. 方法三

    DECLARE  
      V_EMP_INFO EMP%ROWTYPE;  
      CURSOR EMP_INFO IS  
        SELECT * FROM EMP; --1、聲明游標(biāo)  
    BEGIN  
      FOR V_EMP_INFO IN EMP_INFO LOOP  
        DBMS_OUTPUT.PUT_LINE(V_EMP_INFO.ENAME || '的雇傭日期是' ||  
                             V_EMP_INFO.HIREDATE);  
      END LOOP;  
      DBMS_OUTPUT.PUT_LINE('已經(jīng)處理完結(jié)果集了');  
    END;  
    /

六、隱式游標(biāo)處理

DECLARE  
  V_EMP_INFO EMP%ROWTYPE;  
BEGIN  
  SELECT * INTO V_EMP_INFO FROM EMP WHERE ename='SMITH';  
  IF SQL%FOUND THEN  
    DBMS_OUTPUT.PUT_LINE(V_EMP_INFO.ENAME || '的雇傭日期是' ||  
                         V_EMP_INFO.HIREDATE);  
  END IF;  
  DBMS_OUTPUT.PUT_LINE('已經(jīng)處理完結(jié)果集了');  
END; 
/

到此,關(guān)于“怎么使用PostgreSQL游標(biāo)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!


文章名稱:怎么使用PostgreSQL游標(biāo)
鏈接分享:http://weahome.cn/article/pjgjso.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部