色尼玛亚洲综合影院,亚洲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編程之把游標說透,轉載需保留來源!

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

主站蜘蛛池模板: 潞城市| 滦平县| 内乡县| 句容市| 剑川县| 乌鲁木齐县| 舒城县| 泰安市| 东乡族自治县| 闻喜县| 禄劝| 遂溪县| 大悟县| 滦南县| 北海市| 莱西市| 东宁县| 徐州市| 铜川市| 镶黄旗| 泗洪县| 新乐市| 武乡县| 炉霍县| 汶川县| 永兴县| 阳泉市| 兴宁市| 建湖县| 酒泉市| 西安市| 樟树市| 禄丰县| 日照市| 西昌市| 板桥市| 泰和县| 屏南县| 金塔县| 麻江县| 姚安县|