色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

ORACLE PL/SQL編程之把游標說透

  本篇主要內容如下: 

  4.1 游標概念 

  4.1.1 處理顯式游標 

  4.1.2 處理隱式游標 

  4.1.3 關于 NO_DATA_FOUND 和 %NOTFOUND的區別 

  4.1.4  使用游標更新和刪除數據 

  4.2 游標變量 

  4.2.1  聲明游標變量 

  4.2.2  游標變量操作

  游標的使用 

  在 PL/SQL 程序中,對于處理多行記錄的事務經常使用游標來實現。 

  4.1 游標概念 

  在PL/SQL塊中執行SELECT、INSERT、DELETE和UPDATE語句時,ORACLE會在內存中為其分配上下文區(Context Area),即緩沖區。游標是指向該區的一個指針,或是命名一個工作區(Work Area),或是一種結構化數據類型。它為應用等量齊觀提供了一種對具有多行數據查詢結果集中的每一行數據分別進行單獨處理的方法,是設計嵌入式SQL語句的應用程序的常用編程方式。 

   在每個用戶會話中,可以同時打開多個游標,其數量由數據庫初始化參數文件中的OPEN_CURSORS參數定義。 

   對于不同的SQL語句,游標的使用情況不同: 

SQL語句 

游標 

非查詢語句 

隱式的 

結果是單行的查詢語句 

隱式的或顯示的 

結果是多行的查詢語句 

顯示的 

  4.1.1 處理顯式游標

  1. 顯式游標處理 

  顯式游標處理需四個 PL/SQL步驟: 

  l 定義/聲明游標:就是定義一個游標名,以及與其相對應的SELECT 語句。 

  格式:

CURSOR cursor_name[(parameter[, parameter]…)] 
[RETURN datatype]
IS
select_statement;
4.2 游標變量

  與游標一樣,游標變量也是一個指向多行查詢結果集合中當前數據行的指針。但與游標不同的是,游標變量是動態的,而游標是靜態的。游標只能與指定的查詢相連,即固定指向一個查詢的內存處理區域,而游標變量則可與不同的查詢語句相連,它可以指向不同查詢語句的內存處理區域(但不能同時指向多個內存處理區域,在某一時刻只能與一個查詢語句相連),只要這些查詢語句的返回類型兼容即可。

  4.2.1  聲明游標變量

  游標變量為一個指針,它屬于參照類型,所以在聲明游標變量類型之前必須先定義游標變量類型。在PL/SQL中,可以在塊、子程序和包的聲明區域內定義游標變量類型。

  語法格式為:

TYPE ref_type_name IS REF CURSOR
[ RETURN return_type];

it知識庫ORACLE PL/SQL編程之把游標說透,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 威信县| 田阳县| 潼南县| 宜黄县| 巨鹿县| 江川县| 南靖县| 南京市| 张家界市| 奉化市| 大姚县| 贺州市| 洪湖市| 喀喇沁旗| 大姚县| 墨竹工卡县| 保康县| 伊金霍洛旗| 铜川市| 牙克石市| 西华县| 梓潼县| 武陟县| 唐河县| 永新县| 荔浦县| 图木舒克市| 岱山县| 黄大仙区| 佛冈县| 三都| 平昌县| 临海市| 阿拉尔市| 临武县| 阆中市| 乌兰浩特市| 孟连| 滦南县| 化德县| 海伦市|