转载自:http://blog.csdn.net/whuarui2010/article/details/7538807
Oracle 数组类型,没有现成的类型,但是可以自己随意定义,很方便。
oracle 数组可以分为定长数组和可变长的数组两类。以下主要是一维数组介绍:
定长数组:
/*定长字符数组,数组大小为10*/
declare
type v_arr is varray(10) of varchar2(30);
my_arr v_arr;
my_arr:=v_arr('1','2','3');
begin
for i in 1..my_arr.count
loop
dbms_output_line(my_arr(i));
end loop;
end;
变长数组:
/*可变长字符数组,元素大小30,索引标号integer类型自增长*/
declare
type v_table is table of varchar2(30) index by binary_integer;
--类型可以是前面的类型定义,index by binary_integer子句代表以符号整数为索引,
--这样访问表类型变量中的数据方法就是“表变量名(索引符号整数)”。
my_table v_table;
begin
for i in 1..20
loop
my_table(i):=i;
-- 这样写结果也是一样
-- my_table(my_table.count+1):=i;
dbms_output.put_line(my_table(i));
end loop;
end;
以上内容只涉及到一维数组的定义和简单实用,多维数组未介绍。
参考oracle数组介绍地址:http://www.cnblogs.com/lll3344/archive/2011/03/09/1978366.html