【问题标题】:Create and populate Varray in Oracle SQL在 Oracle SQL 中创建和填充 Varray
【发布时间】:2016-12-15 11:24:28
【问题描述】:

我正在尝试创建一个 bean 类型的 Varray 并填充它,但我很着急,没有找到任何有用的示例。

arr=[[1,'A'],[2,'B'],[3,'C']]

这是我的代码:

 create table my_table (NUM_OPERACIO NUMBER,TITULS varchar2(3)) ;
 insert into my_table values(1,'A');
 insert into my_table values(2,'B');
 insert into my_table values(3,'C');

 create TYPE item IS object( NUM_OPERACIO NUMBER, TITULS varchar2(3)); 
 /
 create TYPE arr IS VARRAY(10) OF item;
 /

 insert into arr values( select NUM_OPERACIO, TITULS from my_table);

 FOR i IN 1..3 loop
     dbms_output.put_line(arr (i));
 END loop;

请帮我实现这个目标。

提前致谢

【问题讨论】:

    标签: sql oracle plsql varray


    【解决方案1】:

    Oracle 设置:

    create table my_table (NUM_OPERACIO NUMBER,TITULS varchar2(3)) ;
    insert into my_table values(1,'A');
    insert into my_table values(2,'B');
    insert into my_table values(3,'C');
    
    CREATE TYPE item IS object( NUM_OPERACIO NUMBER, TITULS varchar2(3)); 
    /
    CREATE TYPE item_array IS VARRAY(10) OF item;
    /
    

    PL/SQL:

    DECLARE
      arr item_array;
    BEGIN
      SELECT item( NUM_OPERACIO,TITULS )
      BULK COLLECT INTO arr
      FROM   my_table;
    
      FOR i IN 1..arr.COUNT loop
        dbms_output.put_line(arr(i).NUM_OPERACIO || ', ' || arr(i).TITULS);
      END loop;
    END;
    /
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-06-14
      • 1970-01-01
      • 2019-04-30
      • 2016-06-15
      • 2017-12-12
      • 2015-08-04
      • 1970-01-01
      相关资源
      最近更新 更多