oracle 数组的应用(二)

这篇博客详细介绍了PL/SQL中不同类型的数组(lh_sz, qt_b, kb_sz)的声明、初始化、操作,包括计数、删除、扩展、修剪等方法。还展示了如何使用prior和next遍历数组元素,是理解PL/SQL数组操作的实用教程。
摘要由CSDN通过智能技术生成

-- Created on 2019/3/28 by IRIS.ZHOU 
declare 
  type lh_sz is table of varchar2(10) index by binary_integer;
  type qt_b  is table of number(10);
  type kb_sz is varying array(20) of number(10) not null;
  
  lh_num lh_sz;
  qt_num qt_b:=qt_b(1,2,3,4,5,6,7,88);
  kb_num kb_sz:=kb_sz(1,2,3,4,5,6,77);
  cnum integer:=1;
  cindex constant integer:=1;
begin
 
 /** 
  dbms_output.put_line('qt_num属性count:'||qt_num.count);
  dbms_output.put_line('kb_num最大個數:'||kb_num.limit);
  dbms_output.put_line('lh_num最大個數:'||lh_num.limit);
  --返回的是數字,即當前集合的第一個和最後一個所在的位置
  dbms_output.put_line('qt_num第一個和最後一個:'||qt_num.first||','||qt_num.last);
  
  if not lh_num.exists(cindex) then
    lh_num(1):='01';
    lh_num(2):='02';
    lh_num(3):='03';
    lh_num(4):='04';
    lh_num(5):='05';
  end if;  
  
  
  lh_num.delete(1);
   dbms_output.put_line('lh_num属性count:'||lh_num.count);
  lh_num.delete(3,4);
   dbms_output.put_line('lh_num属性count:'||lh_num.count);
  lh_num.delete();
   dbms_output.put_line('lh_num属性count:'||lh_num.count);

   
  kb_num.extend(); 
   dbms_output.put_line('kb_num属性count:'||kb_num.count);
  kb_num.extend(1); 
   dbms_output.put_line('kb_num属性count:'||kb_num.count);
  kb_num.extend(1,4); 
   dbms_output.put_line('kb_num属性count:'||kb_num.count);
   dbms_output.put_line('kb_num属性count:'||kb_num(kb_num.count));
 
  kb_num.trim(); 
   dbms_output.put_line('kb_num属性count:'||kb_num.count);
  kb_num.trim(1); 
   dbms_output.put_line('kb_num属性count:'||kb_num.count);
 
 -- prior、next在loop 中的應用
 
 for cnum in kb_num.first..kb_num.last loop
   dbms_output.put_line('kb_num的上一個值:'||kb_num.prior(cnum));--上一個所在位置個數
   dbms_output.put_line('kb_num的下一個值:'||kb_num.next(cnum));--下一個所在位置個數
 end loop;
  **/
  cnum:=kb_num.first; 
 loop
   cnum:=kb_num.next(cnum);
   dbms_output.put_line('kb_num的上一個值:'||kb_num.prior(cnum));--上一個所在位置個數
   exit when cnum>=kb_num.last;
 end loop;

end;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不知道叫什麽名字

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值