Oracle提取游標

這篇Oracle教學解釋了如何使用Oracle / PLSQL FETCH語句的語法和示例。

在大多數情況下使用游標的目的是從游標中檢索行數據,以便對數據執行某種類型的操作。 聲明並打開游標後,下一步是使用FETCH語句從游標中提取行數據。

語法

Oracle / PLSQL中的FETCH語句的語法是:

FETCH cursor_name INTO variable_list;

參數

  • cursor_name - 希望獲取行的游標的名稱。
  • variable_list - 用於存儲游標結果集的變數列表,逗號分隔。

示例

例如,可以將游標定義為:

CURSOR c1
IS
   SELECT course_number
   FROM courses_tbl
   WHERE course_name = name_in;

將用於從該游標獲取數據的命令是:

FETCH c1 into cnumber;

這會將第一個course_number讀入名為cnumber的變數。

下麵是一個演示如何使用FETCH語句的函數。

CREATE OR REPLACE Function FindCourse
   ( name_in IN varchar2 )
   RETURN number
IS
   cnumber number;

   CURSOR c1
   IS
     SELECT course_number
     FROM courses_tbl
     WHERE course_name = name_in;

BEGIN

   OPEN c1;
   FETCH c1 INTO cnumber;

   if c1%notfound then
      cnumber := 9999;
   end if;

   CLOSE c1;

RETURN cnumber;

END;

上一篇: Oracle游標 下一篇: Oracle觸發器