PL/SQL集合
第一,PL/SQL表
它只能作為PL/SQL類型,不能作為表列類型。
下標可以為負值,并且元素個數無限制。
下標類型key_type: 包括BINARY_INTEGER、PLS_INTEGER、VARCHAR2。
語法:
TYPE type_name IS TABLE OF element_type
[NOT NULL] INDEX BY key_type;
identifier type_name;
例如:
DECLARE
TYPE category_table_type IS TABLE OF VARCHAR2 (40)
INDEX BY VARCHAR2 (40);
category_table category_table_type;
BEGIN
category_table ('長沙') := '長沙,我愛你!';
DBMS_OUTPUT.put_line (category_table ('長沙'));
END;
第二,嵌套表
可以作為表列的數據類型使用。
當使用嵌套表元素時,需要使用構造方法初始化嵌套表變量。
下標從1開始計算。
語法:
TYPE type_name IS TABLE OF element_type;
identifier type_name;
例子:
DECLARE
TYPE category_table_type IS TABLE OF tb_out_service.servicename%TYPE;
category_table category_table_type;
BEGIN
category_table := category_table_type ('全省', '長沙', '常德');
SELECT servicename
INTO category_table (3)
FROM tb_out_service
WHERE serviceid = '&serviceid';
DBMS_OUTPUT.put_line (category_table (1));
DBMS_OUTPUT.put_line (category_table (2));
DBMS_OUTPUT.put_line (category_table (3));
END;
第三,變長數組(VARRAY)
需要使用構造方法初始化VARRAY變量。
語法:
TYPE type_name is VARRAY(size_limit) OF element_type [NOT NULL];
identifier type_name;
posted on 2009-03-18 10:50 JavaBegger 閱讀(228) 評論(0) 編輯 收藏