Oracle資料庫遊標使用方法

2020-11-23 IT168

  【IT168技術文檔】

  SQL是用於訪問Oracle資料庫的語言,PL/SQL擴展和加強了SQL的功能,它同時引入了更強的程序邏輯, 下面在本文中將對遊標的使用進行一下講解,希望可以和大家共同學習進步。

  遊標字面理解就是遊動的光標。遊標是SQL的一個內存工作區,由系統或用戶以變量的形式定義。在某些情況下,需要把數據從存放在磁碟的表中調到計算機內存中進行處理,最後將處理結果顯示出來或最終寫回資料庫。這樣數據處理的速度才會提高,否則頻繁的磁碟數據交換會降低效率。用資料庫語言來描述遊標就是映射在結果集中一行數據上的位置實體,有了遊標,用戶就可以訪問結果集中的任意一行數據了,將遊標放置到某行後,即可對該行數據進行操作,例如提取當前行的數據等。

  遊標有兩種類型:顯式遊標和隱式遊標。遊標一旦打開,數據就從資料庫中傳送到遊標變量中,然後應用程式再從遊標變量中分解出需要的數據,並進行處理。

  當系統使用一個隱式遊標時,可以通過隱式遊標的屬性來了解操作的狀態和結果,進而控制程序的流程。隱式遊標可以使用名字SQL來訪問,但要注意,通過SQL遊標名總是只能訪問前一個處理操作或單行SELECT操作的遊標屬性。所以通常在剛剛執行完操作之後,立即使用SQL遊標名來訪問屬性。遊標的屬性有四種,分別是SQL %ISOPEN,SQL %FOUND,SQL %NOTFOUND,SQL %ROWCOUNT。

  SQL%ISOPEN返回的類型為布爾型,判斷遊標是否被打開,如果打開%ISOPEN等於true,否則等於false,即執行過程中為真,結束後為假。

  SQL%NOTFOUND返回值為布爾型,判斷遊標所在的行是否有效,如果有效,則%FOUNDD等於true,否則等於false,即與%FOUND屬性返回值相反。

  SQL%FOUND返回值的類型為布爾型,值為TRUE代表插入 刪除 更新或單行查詢操作成功。

  SQL%ROWCOUNT返回值類型為整型,返回當前位置為止遊標讀取的記錄行數,即成功執行的數據行數。 示例代碼如下:

  set serveroutput on;

  declare

  varno varchar2(20);

  varprice varchar2(20);

  CURSOR mycur(vartype number) is

  select emp_no,emp_zc from cus_emp_basic

  where com_no = vartype;

  begin

  if mycur%isopen = false then

  open mycur(043925);

  end if;

  fetch mycur into varno,varprice;

  while mycur%found

  loop

  dbms_output.put_line(varno||','||varprice);

  if mycur%rowcount=2 then

  exit;

  end if;

  fetch mycur into varno,varprice;

  end loop;

  close mycur;

  end;

  記錄並不保存在資料庫中,它與變量一樣,保存在內存空間中,在使用記錄時候,要首先定義記錄結構,然後聲明記錄變量。可以把PL/SQL記錄看作是一個用戶自定義的數據類型。

  遊標for循環是顯示遊標的一種快捷使用方式,它使用for循環依次讀取結果集中的行數據,當form循環開始時,遊標自動打開(不需要open),每循環一次系統自動讀取遊標當前行的數據(不需要fetch),當退出for循環時,遊標被自動關閉(不需要使用close)。使用遊標for循環的時候不能使用open語句,fetch語句和close語句,否則會產生錯誤。

相關焦點

  • 零基礎學Oracle之2:開始使用oracle
    零基礎學Oracle之2:開始使用oracle1、 資料庫管理工具OUI:安裝使用,自帶的DBCA:圖形化創建資料庫,初學者使用SQL*PLUS:重點掌握OEM:外圍產品2、 OUI:統一安裝器而oracle則力推java,把java虛擬機內嵌到oracle中。[oracle@wl database]$ ./runInstaller 在資料庫軟體目錄下執行這個安裝,類似於windows的setup
  • SQL遊標原理和使用方法
    我們知道關係資料庫管理系統實質是面向集合的,在MS SQL SERVER 中並沒有一種描述表中單一記錄的表達形式,除非使用where 子句來限制只有一條記錄被選中。因此我們必須藉助於遊標來進行嫦虻ヌ跫鍬嫉氖?荽?懟?
  • Oracle資料庫參數優化參考
    因此,獲得滿意的用戶響應時間有兩個途徑:一是減少系統服務時間,即提高資料庫的吞吐量;二是減少用戶等待時間,即減少用戶訪問同一資料庫資源的衝突率。資料庫性能優化包括如下幾個部分:1.調整數據結構的設計 這一部分在開發信息系統之前完成,程式設計師需要考慮是否使用Oracle資料庫的分區功能,對於經常訪問的資料庫表是否需要建立索引等。
  • 遊標卡尺的介紹及使用方法!
    遊標卡尺的概述遊標卡尺作為一種被廣泛使用的高精度測量工具,它是由主尺和附在主尺上能滑動的遊標兩部分構成。如果按遊標的刻度值來分,遊標卡尺又分0.1、0.05、0.02mm三種。遊標卡尺的讀數方法以刻度值0.02mm的精密遊標卡尺為例,讀數方法,可分三步;1)根據副尺零線以左的主尺上的最近刻度讀出整毫米數;2)根據副尺零線以右與主尺上的刻度對準的刻線數乘上0.02讀出小數;
  • 遊標卡尺的介紹及使用方法
    遊標卡尺的概述遊標卡尺作為一種被廣泛使用的高精度測量工具,它是由主尺和附在主尺上能滑動的遊標兩部分構成。如果按遊標的刻度值來分,遊標卡尺又分0.1、0.05、0.02mm三種。副尺0 線後的第9條線表示: 0.02x9= 0.18mm所以被測工件的尺寸為: 64+0.18=64.18mm遊標卡尺的使用方法將量爪併攏,查看遊標和主尺身的零刻度線是否對齊。
  • 遊標卡尺的使用方法
    遊標卡尺的使用方法:應用遊標讀數原理製成的量具有遊標卡尺、遊標量角尺、深度遊標卡尺、高度遊標卡尺、齒厚遊標卡尺等,以測量外徑、內徑、寬度、高度、深度、厚度、長度、角度以及齒輪的齒厚等,應用範圍很廣泛。量具的使用是否合理,不僅會影響量具本身的精度,還會直接影響零件尺寸的量測精度,有可能會發生質量事故,給我國造成不必要的損失,因此,必須注意正確使用測量工具,對測量技術精益求精,並確保獲得正確的測量結果,以保障產品質量。
  • 如何使用SQL Server遊標
    【IT168 技術文檔】在資料庫開發過程中,當你檢索的數據只是一條記錄時,你所編寫的事務語句代碼往往使用SELECT INSERT 語句。但是我們常常會遇到這樣情況,即從某一結果集中逐一地讀取一條記錄。那麼如何解決這種問題呢?遊標為我們提供了一種極為優秀的解決方案。
  • 遊標卡尺的使用方法—乾貨
    遊標卡尺的精度0.02mm三,遊標卡尺的刻線原理和讀數方法    1)10分度遊標卡尺度數原理    這種遊標卡尺,主尺上每一小格為1mm,遊標尺上有10卡尺使用前應擦淨量爪,並將兩量爪合攏,檢查這時主、遊標尺零刻線是否重合,若不重合,則在以後測量中應根據這個起始誤差修正各讀數。用遊標卡尺測量時,應使量爪逐漸靠近零件表面,最後達到輕微接觸,以防量爪變形或磨損,從而影響測量精度。讀數時要正視尺身與遊標對準的刻線,不要造成斜視誤差,測量同一個點有2~3個接近的數值時,應取算術平均值作為測量結果。量具使用完畢後必須揩淨上油,妥善保管。
  • 認識一下資料庫的使用
    其實在我們這一行中,資料庫的使用是重中之重!為啥我們要使用資料庫呢?你想一想你所發的信息,生成的帳號信息都需要一個很龐大的容器來容納你們的信息,這個容器就叫做資料庫。其中最常見的兩個資料庫,一個叫MySQL,另一個叫Oracle數據。先認識一下函數。函數是oracle提供的對結果集進行再加工的封裝特定功能的單元,可以重複利用。
  • 遊標卡尺和千分尺的使用方法
    遊標卡尺是工業上常用的測量長度的儀器,可直接用來測量精度較高的工件,如工件的長度、內徑、外徑以及深度等。遊標卡尺的概述遊標卡尺作為一種被廣泛使用的高精度測量工具,它是由主尺和附在主尺上能滑動的遊標兩部分構成。如果按遊標的刻度值來分,遊標卡尺又分0.1、0.05、0.02mm三種。
  • 千分尺和遊標卡尺的正確使用方法
    一、千分尺的正確使用方法(一)、千分尺的簡介千分尺是常用的精密測量量具,主要的優點是它的結構設計穩定,因此它的測量精度比遊標卡尺高得多,所以千分尺比遊標卡尺更適合測量精度和光潔度高的物件。因此使用千分尺可以準確讀出0.01mm的數值。(三)、千分尺的零位校準使用千分尺之前,應該先觀察千分尺微分筒端面是否與固定套管的零刻度線是否重合,同時可動刻度零線與固定刻度水平橫線重合。
  • 零基礎學Oracle之4:理解oracle的啟動與關閉
    1) 在$ORACLE_HOME/dbs/目錄下查找初始化參數文件spfileSID.ora,啟動instance2) 查找預設spfile文件,就是spfile.ora, 啟動instance3) 查找initSID.ora這個文件並啟動instance4) 使用預設
  • 遊標卡尺怎麼看?遊標卡尺使用方法和讀數方法【圖解】
    遊標卡尺(VERNIER CALLIPER),是一種測量長度、內外徑、深度的量具。遊標卡尺由主尺和附在主尺上能滑動的遊標兩部分構成。
  • 買珠子看不懂遊標卡尺?!是時候再科普一遍,遊標卡尺的使用方法了!
    或者是什麼其他的數值,那請您一定要好好學習一下遊標卡尺的使用方法。是時候再科普一遍遊標卡尺的使用方法了!早期的卡尺在主尺上有19個分度,遊標尺上有20個分度,提供0.05的精度,但是,線與線之間的間隔太近,很難讀數、所以自從1970年起,長遊標卡尺普遍都使用39個主尺分度,以此來拉大刻度線的間距。
  • 遊標卡尺 常用通用量具的使用方法
    遊標卡尺 常用通用量具的使用方法當使用簡單的刻線量具(如刻度尺)進行測量時,要求準確到 1/10 刻度是相當困難的,主要是因為人 眼的分辨能力所限。為增加讀數的準確度,可以利用機械細分的辦法解決。遊標卡尺的原理實際上就是遊標 刻線細分原理,通常在測量準確度要求不高的生產車間使用,如在軸承生產中,鍛件、熱處理件及外購保持 架、車工件的檢驗可用遊標卡尺,直接量出工件的內徑、外徑、寬度等尺寸。 1) 外形結構 遊標卡尺的外形結構。它由主尺(尺身)1、帶遊標的尺框 2、活 動量爪 3、固定量爪 4、內量爪 5、6 和固定螺絲 7 組成。
  • 遊標卡尺讀數原理,遊標卡尺讀數方法
    遊標卡尺是目前工程工業中使用最廣泛的一種測量工具,它的出現可以說是具有劃時代意義的。在測量工件內徑、外徑、深度、寬度等方面有著很大的優勢。但遊標卡尺的形式也有很多,很多使用者對於某些形式的遊標卡尺的使用還存在著一定的誤解。今天我們就講一講遊標卡尺的知識。
  • 資料庫常用命令指南 ASP資料庫語法歸納總結
    第1頁第2頁     經常使用到有關資料庫的操作。包括連接代碼、SQL命令等等,又不曾刻意去記憶它們(我本人是不願意去記這東東),所以常常在用到的時候又去查書本,翻來翻去。一些比較少用的資料庫還不一定能順利找到,所以現在把它們全歸納到這裡,提供大家參考。(個人水平有限,有缺陷之處,歡迎大家指正。)
  • 遊標卡尺的作用、結構、使用方法、注意事項
    ① 遊標卡尺的原理下面我們以20 分度為例,介紹遊標卡尺的讀數原理。遊標卡尺的原理1—主尺;2—遊標尺如上圖所示,我們可以看到:主尺的每一個刻度為1mm;遊標尺總長19mm,共有20 個刻度,等分19mm,稱為20 分度;遊標尺每一刻度都比主尺每一刻度短0.05mm,稱該卡尺的精度為0.05mm;遊標尺的「0」刻度與主尺「0」刻度相對齊,此時測量的結果為
  • 遊標卡尺的原理和使用
    遊標卡尺的原理和使用閔鑫
  • 如何在Oracle中使用遊標來實現多重循環
    【IT168 伺服器學院】這篇文章,是最近在寫一個項目中所用的存儲過程,由於是第一次接觸oracle,其間花費了許多功夫,才把功能實現!特記錄下來,以供參考!