2009-05-06 30 views

Trả lời

12

Có. Oracle gọi chúng là các bộ sưu tập và có nhiều bộ sưu tập mà bạn có thể sử dụng.

Ví dụ về mảng đơn giản bằng cách sử dụng 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

rất tuyệt vời. Tôi đã thêm một ví dụ thứ hai cho thấy Str_Array (...) làm tham số. –

1

Nếu tôi không sai, có một kiểu gốc được gọi là TABLE về cơ bản là một mảng. Nhưng lần trước tôi sử dụng nó là năm 2001 nên có lẽ có những loại mạnh nhất hiện nay.

Kiểm tra điều này http://www.developer.com/db/article.php/3379271

Các vấn đề liên quan