• 軟件測試技術
  • 軟件測試博客
  • 軟件測試視頻
  • 開源軟件測試技術
  • 軟件測試論壇
  • 軟件測試沙龍
  • 軟件測試資料下載
  • 軟件測試雜志
  • 軟件測試人才招聘
    暫時沒有公告

字號: | 推薦給好友 上一篇 | 下一篇

軟件測試開發技術PL/SQL用光標查詢多條記錄[2]

發布: 2009-10-14 10:24 | 作者: 不詳 | 來源: 領測軟件測試網采編 | 查看: 20次 | 進入軟件測試論壇討論

領測軟件測試網

軟件測試開發技術PL/SQL用光標查詢多條記錄[2]  SQL數據庫

關鍵字:sql     2、打開光標

  打開光標的語法如下:
  OPEN cursor_name;

  其中cursor_name是您以前定義的光標名稱。

  打開光標將激活查詢并識別活動集,可是在執行光標取回命令之前,并沒有真正取回記錄。OPEN命令還初始化了光標指針,使其指向活動集的第一條記錄。光標被打開后,直到關閉之前,取回到活動集的所有數據都是靜態的,換句話說,光標忽略所有在光標打開之后,對數據執行的SQL DML命令(INSERT、UPDATE、DELETE和SELECT)。因此只有在需要時才打開它,要刷新活動集,只需關閉并重新打開光標即可。

  3、從光標中取回數據

  FETCH命令以每次一條記錄的方式取回活動集中的記錄。通常將FETCH命令和某種迭代處理結合起來使用,在迭代處理中,FETCH命令每執行一次,光標前進到活動集的下一條記錄。

  FETCH命令的語法:
  FETCH cursor_name INTO record_list;

  其中,cursor_name是前面定義的光標的名稱;record_list是變量列表,它接收活動集中的列。FETCH命令將活動集的結果放置到這些變量中。

  執行FETCH命令后,活動集中的結果被取回到PL/SQL變量中,以便在PL/SQL塊中使用。每取回一條記錄,光標的指針就移向活動集的下一條記錄。

  例:
  FETCH C1 INTO VNAME;
  WHILE C1%FOUND LOOP
  DBMS_OUTPUT.PUT_LINE(TO_CHAR(C1%ROWCOUNT)||' '||VNAME);
  END LOOP;

  其中,使用屬性'%FOUND'使得當FETCH到達活動集的結尾時,不會引發異常。其它屬性及含義見下表:
  屬性     含量
  %FOUND    布爾型屬性,當最近一次該記錄時成功返回,則值為TRUE
  %NOTFOUND  布爾型屬性,它的值總與%FOUND屬性的值相反
  %ISOPEN   布爾型屬性,當光標是打開時返回TRUE
  %ROWCOUNT  數字型屬性,返回已從光標中讀取的記錄數


  屬性     含量
  %FOUND    布爾型屬性,當最近一次該記錄時成功返回,則值為TRUE
  %NOTFOUND  布爾型屬性,它的值總與%FOUND屬性的值相反
  %ISOPEN   布爾型屬性,當光標是打開時返回TRUE
  %ROWCOUNT  數字型屬性,返回已從光標中讀取的記錄數

  4、關閉光標

  CLOSE語句關閉以前打開的光標,使得活動集不確定。當用戶的程序或會話結束時,Oracle隱式關閉光標。光標被關閉后,就不能對它執行任何操作了,否則將引發異常。

  CLOSE語句的語法是:
CLOSE cursor_name;

  其中,cursor_name是以前打開的光標的名稱。

延伸閱讀

文章來源于領測軟件測試網 http://www.anti-gravitydesign.com/

TAG: sql SQL Sql 光標 記錄 技術 軟件測試


關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97