DECLARE 
TYPE  InteArrayTyp  IS  TABLE  OF  integer(20) INDEX  BY  BINARY_INTEGER;  
      v_1 InteArrayTyp; 
k INTEGER :=0; 
Temp 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; 
  dbms_output.put_line(v_1(k)); 
--对数组中的数据进行排序,这个总报找不到数据的错误。
  IF (v_1(k-1)>=v_1(k)) then 
  TEMP:= V_1(k-1);
  V_1(k-1):= V_1(k);
  v_1(k):= v_1(k-1);
  k := k+1; 
    End If;
end loop; 
--把数组中的数据更新回原单元
/*这个还没有编写出来*/
--输出游标活动的次数
dbms_output.put_line('The times  of cursor to fetch ' || k);
close bb;
end;
/*定一个数组,然后用游标在数据库中取得数据单元,把数据单元赋值给数组,
然后对数组进行排序,然后再把这个数组更新到原来的单元显示出来
也就是数据库中的排序效果*/