无法将值存储到“名称”数组中。请帮助我解决该错误。
declare
type name is varray(50) of varchar2(10);
abc varchar2(50);
names name:=name();
begin
for i in 0..4
loop
select cname into abc from customer where cid=1;
names(i):=abc;
dbms_output.put_line(names(i));
end loop;
end;
我是 pl/sql 的新手,我正在尝试将元素添加到我的数组中,但出现如下错误。
ORA-06532: 下标超出限制
PL/SQL 中的循环需要从 1 开始。
此外,在保存值之前,您需要extend
记录变量。
此外,您的类型是varray(50) of VARCHAR2(10)
,而abc
变量的大小为 50。
declare
type name is varray(50) of varchar2(50);
abc varchar2(50);
names name:=name();
begin
for i in 1..4
loop
select cname into abc from customer where cid=1;
names.extend(1);
names(i):=abc;
dbms_output.put_line(names(i));
end loop;
end;
为什么需要EXTEND
-标准 Oracle DOC
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句