自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Oracle集合類型如何輸出參數(shù)PL存儲(chǔ)過程

數(shù)據(jù)庫 Oracle
以下的文章主要介紹的是實(shí)現(xiàn)Oracle集合類型的輸出參數(shù)PL/SQL的存儲(chǔ)過程的實(shí)際操作步驟。以下就是文章的具體描述。

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

1 引言

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

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

2 PL/SQL存儲(chǔ)過程及Java程序的編寫

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

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

2.1.1存儲(chǔ)過程的編寫

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

  1. create or replace package out_param is  

定義了元素是varchar2類型的一個(gè)索引表類型

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

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

  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;  

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

【編輯推薦】

  1. Oracle數(shù)據(jù)庫中經(jīng)常使用的啟動(dòng)方式介紹
  2. Oracle數(shù)據(jù)庫中3種常用的關(guān)閉方式
  3. Oracle11g認(rèn)證考試的3個(gè)主要途徑
  4. Oracle存儲(chǔ)過程的編寫經(jīng)驗(yàn)總結(jié)
  5. 閑談Oracle應(yīng)用數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)與開發(fā)簡介

 

責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-03-26 10:46:58

OraclePL、SQL存儲(chǔ)過程

2010-10-25 15:56:02

Oracle PLSQL過程調(diào)試

2009-03-09 16:39:19

PL SQLOracle過程調(diào)試

2011-04-15 10:56:22

2011-08-24 16:56:54

OracleArray類型存儲(chǔ)過程

2011-08-25 09:31:43

JDBC調(diào)用Oracl

2010-04-16 11:39:56

Oracle存儲(chǔ)過程

2010-06-02 10:09:29

MySQL 存儲(chǔ)過程參

2011-04-12 11:12:20

Oracle存儲(chǔ)過程

2010-05-10 10:46:07

Oracle存儲(chǔ)過程

2010-04-16 11:03:02

Oracle存儲(chǔ)過程

2011-08-23 13:14:05

JDBC帶輸出參數(shù)的存儲(chǔ)過程

2010-04-16 10:11:20

Oracle存儲(chǔ)過程

2010-11-19 11:32:25

Oracle存儲(chǔ)過程

2011-04-13 09:45:15

Oracle存儲(chǔ)

2010-04-07 13:12:25

Oracle存儲(chǔ)過程

2009-03-25 10:48:08

存儲(chǔ)銀行Oracle

2010-04-30 08:47:22

Oracle分頁存儲(chǔ)

2010-05-07 13:03:01

Oracle通過存儲(chǔ)過

2012-03-08 10:18:33

JavaOracle
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號