能不能给个简单的例子?

解决方案 »

  1.   

    CREATE OR REPLACE TYPE CHAR_ARRAY
    AS VARRAY(2) OF VARCHAR2(5 CHAR);CREATE OR REPLACE TYPE CHAR_ARRAY2
    AS VARRAY(26) OF CHAR_ARRAY;CREATE OR REPLACE PROCEDURE TEST_SP(I_ARRAY CHAR_ARRAY2) AS
      V_CHAR CHAR_ARRAY;
    BEGIN
      FOR V_I IN 1 .. 26
      LOOP
        V_CHAR := I_ARRAY(V_I);
        FOR V_J IN 1 .. 2
        LOOP
          DBMS_OUTPUT.PUT(V_CHAR(V_J)||'   ');
        END LOOP;
    DBMS_OUTPUT.PUT_LINE('');
      END LOOP;
    END;DECLARE
      V_CHAR_ARRAY CHAR_ARRAY2 := CHAR_ARRAY2(CHAR_ARRAY('1',
                                                         'A'),
                                              CHAR_ARRAY('2',
                                                         'B'),
                                              CHAR_ARRAY('3',
                                                         'C'),
                                              CHAR_ARRAY('4',
                                                         'D'),
                                              CHAR_ARRAY('5',
                                                         'E'),
                                              CHAR_ARRAY('6',
                                                         'F'),
                                              CHAR_ARRAY('7',
                                                         'G'),
                                              CHAR_ARRAY('8',
                                                         'H'),
                                              CHAR_ARRAY('9',
                                                         'I'),
                                              CHAR_ARRAY('10',
                                                         'J'),
                                              CHAR_ARRAY('11',
                                                         'K'),
                                              CHAR_ARRAY('12',
                                                         'L'),
                                              CHAR_ARRAY('13',
                                                         'M'),
                                              CHAR_ARRAY('14',
                                                         'N'),
                                              CHAR_ARRAY('15',
                                                         'O'),
                                              CHAR_ARRAY('16',
                                                         'P'),
                                              CHAR_ARRAY('17',
                                                         'Q'),
                                              CHAR_ARRAY('18',
                                                         'R'),
                                              CHAR_ARRAY('19',
                                                         'S'),
                                              CHAR_ARRAY('20',
                                                         'T'),
                                              CHAR_ARRAY('21',
                                                         'U'),
                                              CHAR_ARRAY('22',
                                                         'V'),
                                              CHAR_ARRAY('23',
                                                         'W'),
                                              CHAR_ARRAY('24',
                                                         'X'),
                                              CHAR_ARRAY('25',
                                                         'Y'),
                                              CHAR_ARRAY('26',
                                                         'Z'));
    BEGIN
      TEST_SP(V_CHAR_ARRAY);
    END;
      

  2.   

    感觉用多维数组在Oracle里的使用,太累。