VARRAY 集合类型声明 (PL/SQL)
VARRAY 是一种集合类型,在此集合中,每个元素都由称为数组下标的正整数引用。 VARRAY 的最大基数在类型定义中指定。
TYPE IS VARRAY 语句用于定义 VARRAY 集合类型。
语法
描述
- varraytype
- 对此数组类型指定的标识。
- n
- 此数组类型中的最大元素数目。
- 数据类型
- 受支持的数据类型,例如 NUMBER、VARCHAR2、RECORD、VARRAY 或关联数组类型。 另外,还支持 %TYPE 属性和 %ROWTYPE 属性。
示例
以下示例从 EMP 表中读取职员姓名,将姓名存储在类型为
VARRAY 的数组变量中,然后显示结果。 EMP 表包含一个名为 ENAME 的列。 代码从 Db2® 脚本 (script.db2) 执行。 在执行脚本 (
db2 -tvf script.db2) 之前,应该从 Db2 命令窗口发出以下命令:db2set DB2_COMPATIBILITY_VECTOR=FFF
db2stop
db2start
此脚本包含以下代码:SET SQLCOMPAT PLSQL;
connect to mydb
/
CREATE PACKAGE foo
AS
TYPE emp_arr_typ IS VARRAY(5) OF VARCHAR2(10);
END;
/
SET SERVEROUTPUT ON
/
DECLARE
emp_arr foo.emp_arr_typ;
CURSOR emp_cur IS SELECT ename FROM emp WHERE ROWNUM <= 5;
i INTEGER := 0;
BEGIN
FOR r_emp IN emp_cur LOOP
i := i + 1;
emp_arr(i) := r_emp.ename;
END LOOP;
FOR j IN 1..5 LOOP
DBMS_OUTPUT.PUT_LINE(emp_arr(j));
END LOOP;
END;
/
DROP PACKAGE foo
/
connect reset
/此脚本生成以下样本输出:Curly
Larry
Moe
Shemp
Joe