DECLARETYPE InteArrayTyp IS TABLE OF integer(20) INDEX BY BINARY_INTEGER;
v_1 InteArrayTyp;
k INTEGER :=0;
S_Counter INTEGER :=0;
BEGIN
select COUNT(SNO) INTO S_Counter From student;
WHILE k<S_Counter LOOP
SELECT SNO into v_1(k) FROM STUDENT where SNAME = 'ldh';
dbms_output.put_line(v_1(k));
S_Counter := S_Counter -1;
End Loop;
EXCEPTION WHEN OTHERS THEN
dbms_output.put_line('errors');
END;
我的数据库里面对应SNAME ='LDH'的sno数据有多条,我想全部都赋值给数组,但是报错,请大家给看看,没分了
v_1 InteArrayTyp;
k INTEGER :=0;
S_Counter INTEGER :=0;
BEGIN
select COUNT(SNO) INTO S_Counter From student;
WHILE k<S_Counter LOOP
SELECT SNO into v_1(k) FROM STUDENT where SNAME = 'ldh';
dbms_output.put_line(v_1(k));
S_Counter := S_Counter -1;
End Loop;
EXCEPTION WHEN OTHERS THEN
dbms_output.put_line('errors');
END;
我的数据库里面对应SNAME ='LDH'的sno数据有多条,我想全部都赋值给数组,但是报错,请大家给看看,没分了
sno有多条数据,想要赋给V_1(K)肯定会报错啊
v_1 InteArrayTyp;
k INTEGER :=0;
S_Counter INTEGER :=0;
cursor bb is SELECT SNO FROM STUDENT where SNAME = 'ldh'; BEGIN
open bb;
loop
fetch bb into v_1(k);
exit when bb%notfound;
k+=1;
dbms_output.put_line(v_1(k));
S_Counter := S_Counter -1;
end loop;
end;
BEGIN
open bb;
loop
fetch bb into v_1(k);
exit when bb%notfound;
dbms_output.put_line(v_1(k));
k:= k+1;
S_Counter := S_Counter -1;
end loop;
end;
谢谢大哥了,但是这里出错了,这个应该放在后边。,太感谢你了,不为了分,为了学习的共同的目的