oracle - 获取 ORA-06532: 下标超出限制
问题描述
我创建了 varray 集合类型,以便从 serv_item 表中获取 serv_item_id 列值。但是在执行时,我得到了超出限制错误的订阅。
declare
type t1 is varray(1000) of serv_item%rowtype;
v_t1 t1:=t1();
n number :=0;
cursor c1 is select * from serv_item;
begin
open c1;
loop
v_t1.extend();
fetch c1 into v_t1(n);
exit when c1%notfound;
n:=n+1;
end loop;
close c1;
for i in 0..v_t1.count
loop
dbms_output.put_line('The serv item'||v_t1(i).serv_item_id);
end loop;
end;
/
解决方案
可变数组索引从 1 开始,而不是 0。
推荐阅读
- git - 从 BitBucket 克隆时出错
- image - Laravel 让上传的图片有 600 个烫发
- ajax - Django - 如何以恒定的时间间隔进行 API 调用
- r - 如何使用 reticulate 在 R 包开发中导出 python 函数?
- python-2.7 - 使用python提取数字的前2位
- javascript - 根据选定的无线电输入显示和隐藏 div
- php - SQLSTATE[HY000] [2002] AWS 实例连接超时
- php - 在 Rails 应用程序旁边运行 php 应用程序
- command-line-arguments - 如何将命令行上的单个斜杠转义到 Git bash?
- reactjs - 在 react-native 中检测媒体按钮按下