参数含有数组的procedure?解决方法

参数含有数组的procedure?CREATE ORREPLACE PROCEDURE test_proc (out 数组参数)这个procedure该如何定义?

参数含有数组的procedure?
CREATE OR REPLACE PROCEDURE test_proc (out 数组参数) 这个procedure该如何定义?

[解决办法]
http://topic.csdn.net/t/20060112/17/4513467.html 
集合:是具有相同定义的元素的聚合。Oracle有两种类型的集合:
可变长数组(VARRAY):可以有任意数量的元素,但必须预先定义限制值。
嵌套表:视为表中之表,可以有任意数量的元素,不需要预先定义限制值。

在PL/SQL中是没有数组(Array)概念的。但是如果程序员想用Array的话,就得变通一下,用TYPE 和Table of Record来代替多维数组,一样挺好用的。
emp_type 就好象一个table 中的一条record 一样,里面有id, name,gender等。emp_type_array 象个table, 里面含有一条条这样的record (emp_type),就象多维数组一样。
--单维数组
 

SQL code
DECLARE     TYPE   emp_ssn_array   IS   TABLE   OF   NUMBER     INDEX   BY   BINARY_INTEGER;        best_employees   emp_ssn_array;     worst_employees   emp_ssn_array;         BEGIN     best_employees(1)   :=   '123456';     best_employees(2)   :=   '888888';         worst_employees(1)   :=   '222222';     worst_employees(2)   :=   '666666';         FOR   i   IN   1..best_employees.count   LOOP     DBMS_OUTPUT.PUT_LINE('i='||   i   ||   ',   best_employees=   '   ||best_employees(i)     ||   ',   worst_employees=   '   ||worst_employees(i));     END   LOOP;         END;