日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Oracle集合類型如何輸出參數(shù)PL存儲過程

以下的文章主要是介紹Oracle集合類型的輸出參數(shù)PL/SQL的存儲過程,我們現(xiàn)在的java數(shù)據(jù)庫的關(guān)系映射技術(shù)在一定程度上是不提倡使用存儲過程的,其實存儲過程更能發(fā)揮數(shù)據(jù)庫的效率。

1 引言

存儲過程因其執(zhí)行效率高、與事務(wù)處理的結(jié)合、運行更安全等優(yōu)點,在數(shù)據(jù)庫應(yīng)用程序中被廣泛采用。PL/SQL是用于從各種環(huán)境中訪問Oracle數(shù)據(jù)庫的一種編程語言,它與數(shù)據(jù)庫服務(wù)器集成在一起,PL/SQL編寫的存儲過程編譯效率高,網(wǎng)絡(luò)系統(tǒng)開銷小,同時PL/SQL直觀性好,是大多數(shù)人的選擇。

以Number、Varchar等基本標(biāo)量類型為輸出參數(shù)的PL/SQL存 儲過程,每個輸出參數(shù)只能返回一個對應(yīng)值。而在實際數(shù)據(jù)庫應(yīng)用程序中,尤其是在進行系統(tǒng)綜合查詢統(tǒng)計時,往往需要返回二維數(shù)組或結(jié)果集,這時應(yīng)考慮在存儲 過程中使用集合這種數(shù)據(jù)結(jié)構(gòu)。對于集合,我們可以一次把許多元素作為一個整體進行操作,也可以對集合中的單個元素進行操作,使用方便、靈活。

2 PL/SQL存儲過程及Java程序的編寫

2.1 索引表作為輸出參數(shù)

索引表是無約束的,其大小的***限制(除可用內(nèi)存外)就是它的關(guān)鍵字BINARY_INTEGER類型所能表示數(shù)值的約束(-2147483647...+2147483647),其元素不需要按任何特定順序排列。在聲明時,我們不需要指定其大小,而且對索引表的元素可以直接賦值,不用初始化,可見使用索引表極其方便。

2.1.1存儲過程的編寫

我們可以在PL/SQL語句塊中定義索引表,但作為輸出參數(shù)的索引表,必須要在包(package)里定義,方法如下:

 
 
 
  1. create or replace package out_param is 

定義了元素是varchar2類型的一個索引表類型

 
 
 
  1. type out_index_table_typ is table of varchar2(50) 
    index by binary_integer;
  2. end out_param;

接下來就可以在pl/sql存儲過程里引用在包里定義的索引表類型:

 
 
 
  1. create or replace procedure testPro1
    (in_param in varchar2,o_table out out_param. out_index_table_typ ) is
  2. begin 

這里略去程序體

 
 
 
  1. end testPro1; 

其中,返回的索引表類型前必須用包名加上句點來引用out_param. out_index_table_typ ,以上的相關(guān)內(nèi)容就是對Oracle集合類型輸出參數(shù)的PL/SQL存儲過程的介紹,望你能有所收獲。


新聞名稱:Oracle集合類型如何輸出參數(shù)PL存儲過程
網(wǎng)頁地址:http://m.5511xx.com/article/dhsejpj.html