2009-05-06 45 views

回答

12

是的。 Oracle將它們稱爲集合,並且可以使用各種各樣的集合。

使用VARRAY的簡單數組示例。


DECLARE 
    TYPE Str_Array IS VARRAY(4) OF VARCHAR2(50); 
    v_array Str_Array; 

    PROCEDURE PROCESS_ARRAY(v_str_array Str_Array) 
    AS 
    BEGIN 
    FOR i IN v_str_array.first .. v_str_array.last LOOP 
     DBMS_OUTPUT.PUT_LINE('Hello '||v_str_array(i)); 
    END LOOP; 
    END; 

BEGIN 

    v_array := Str_Array('John','Paul','Ringo','George'); 

    PROCESS_ARRAY(v_array); 

    -- can also pass unbound Str_Array 
    PROCESS_ARRAY(Str_Array('John','Paul','Ringo','George')); 

END; 

+0

非常優秀。我添加了第二個顯示Str_Array(...)作爲參數的例子。 – 2009-07-03 09:19:18

相關問題