Oracle 中 数组的创建、赋值、遍历
一、 创建
1、 语法:
Create Or Replace Type "TypeName" Is Varry(int) OfvarryType(int);
TypeName: 数组名
Int: 数组最大长度
varryType(int): 数组里面存放的类型及长度
2、 实例,如下所示:
CREATEORREPLACETYPE"VARCHAR_ARRAY" ISVARRAY(9999) OFNVARCHAR2(2);
VARCHAR_ARRAY:数组名
VARRAY(9999):数组的最大长度是9999
NVARCHAR2(2):数组里面存放的类型是NVARCHAR2类型,每个字符串的最大长度是2
二、 存储过程中数组的赋值、遍历
ProceduretestArray(Re_array outVARCHAR_ARRAY)
Is
Begin
Re_array := VARCHAR_ARRAY(); -- 初始化数组
For i in1.. 10Loop
-- 给数组赋值
Re_array.extend; -- 扩展数组,以便于给数组赋值
Re_array(i) := i; -- 赋值的时候,下标必须从 1 开始,否则会出现 “下标超出数量” 的错误
EndLoop;
-- 遍历数组
For i in1.. Re_array.count Loop
dbms_output.put_line(i || ' : ' || Re_array(i));
EndLoop;
End;
以上方法均由本人亲测通过,如有问题,请留言