EXISTS |
該函數(shù)返回 集合中第一個(gè)元素的索引,如果集合為空,返回NULLNULLNULL |
Collection.EXISTS(index) |
COUNT |
該函數(shù)集合 元素的數(shù)目 |
Collection.COUNT |
DELETE |
該過程從嵌套表中刪除一個(gè)或多個(gè)或合部元素 |
Table_name.DELETE 刪除所有元素 Table_name.delete(index)刪除指定索引的記錄 Table_name.delete(start_index,end_index)刪除區(qū)間內(nèi)元素 |
FIRST |
返回集合第一個(gè)元素索引,如果集合為空,返回NULL |
Collection.FIRST |
LAST |
返回集合中最后一個(gè)元素索引,如果集合為空,返回NULL |
Collection. LAST |
NEXT |
返回集合當(dāng)前元素的下一個(gè)元素的索引,如果它不存在就返回NULL |
Collection. NEXT |
PRIOR |
返回集合當(dāng)前元素的上一個(gè)元素的索引,如果它不存在就返回NULL |
Collection. PRIOR |
LIMIT |
返回varray中創(chuàng)建元素的最大個(gè)數(shù) |
Collection. LIMIT |
EXTENDS |
該過程在集合的末尾添加新的元素 |
Collection.EXTEND添加一個(gè)NULL元素;Collection.extends(n)添加N個(gè)NULL元素,Collection.extend(n,index)添加由index指定位置上元素的n個(gè)副表 |
TRIM |
從集合末尾處刪除元素 |
Collection.TRIM 刪除最后一個(gè)元素 Collection.TRIM(n)刪除最后N個(gè)元素 |
數(shù)據(jù)加中的集合
與index-by表不同,varray和嵌套表可以作為對(duì)象-關(guān)系表中的珍存儲(chǔ)在數(shù)據(jù)庫(kù)中。它們也可以作為對(duì)象關(guān)系表中的列使用。為了表示出作為數(shù)據(jù)庫(kù)列的數(shù)據(jù)類型,集合類型必須是在pl/sql和 sql中可見。這需要使用create or replace type 語句定義而不能僅在pl/sql塊中進(jìn)行局部定義。語法如下:
create of replace type table_name is table of data_type
------from to me
I.表類型
--索引組織表,存放在內(nèi)存中的表.
DECLARE
TYPE t_indexTable IS TABLE OF emp%ROWTYPE NOT NULL INDEX BY BINARY_INTEGER;
v_indexTable t_indexTable;
CURSOR v_cur IS
SELECT * FROM emp;
BEGIN
FOR c IN v_cur LOOP
v_indexTable(c.empno):=c;
IF v_indexTable.EXISTS(c.empno) THEN
DBMS_OUTPUT.PUT_LINE('v_indexTable('||c.empno||').empno=' || c.empno
||';v_indexTable('||c.empno||').ename='||c.ename);
ELSE
DBMS_OUTPUT.PUT_LINE('v_indexTable('||c.empno||'):不存在');
END IF;
END LOOP;
END;
注:INDEX BY BINARY_INTEGER表示索引表,否則為嵌套表.表類型的下標(biāo)不一定是連續(xù)的,所以可以刪除某個(gè)下標(biāo)值,數(shù)組類型不行.
標(biāo)簽:衢州 潮州 包頭 溫州 定西 衡水 通遼 淮北
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《oracle 集合》,本文關(guān)鍵詞 oracle,集合,oracle,集合,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。