ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Object、Varray用法

Object、Varray用法

原创 Linux操作系统 作者:Farmor 时间:2011-04-30 13:03:46 0 删除 编辑

CREATE TYPE po_information AS OBJECT (po_header_id NUMBER,po_number varchar2(150),po_vendor_id NUMBER);
CREATE TYPE po_information_varray AS VARRAY(3) OF po_information;
CREATE TABLE po_information_tab OF po_information;


DECLARE
  TYPE poinformation IS TABLE OF po_information;
  v_po_info poinformation := poinformation(); --初始化
 
  --PoInformation po_information_varray := NULL;
  n         NUMBER;
BEGIN
  --PoInformation := po_information_varray(po_information(1,'dd1',2),po_information(1,'dd2',2),po_information(1,'dd3',2));
  NULL;
  n := 0;
  FOR i IN (SELECT pha.po_header_id, pha.segment1, pha.vendor_id
              FROM po_headers_all pha
             WHERE pha.po_header_id <= 1000) LOOP
    n := n + 1;
    v_po_info.extend; --扩展元素
    v_po_info(n) := po_information(i.po_header_id, i.segment1, i.vendor_id);
    dbms_output.put_line(v_po_info(n).po_header_id);
    dbms_output.put_line(v_po_info(n).po_number);
    dbms_output.put_line(v_po_info(n).po_vendor_id);
    dbms_output.put_line('-------------------------');
  END LOOP;

  FORALL i IN 1 .. v_po_info.last
    INSERT INTO po_information_tab VALUES (v_po_info(i));
END;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25684327/viewspace-694161/,如需转载,请注明出处,否则将追究法律责任。

上一篇: FND_MESSAGE
请登录后发表评论 登录
全部评论

注册时间:2011-04-13

  • 博文量
    22
  • 访问量
    28365