LIMIT returns the maximum number of elements that the collection can have.
If the collection has no maximum number of elements, LIMIT returns NULL.
Only a varray has a maximum size.
The following code prints the values of LIMIT and COUNT for an associative array with four elements, a varray with two elements, and a nested table with three elements.
SQL> SQL> DECLARE-- from www . ja va 2 s.c o m 2 TYPE IntegerListType IS TABLE OF INTEGER INDEX BY PLS_INTEGER; 3 intList IntegerListType; -- associative array 4 5 TYPE va_type IS VARRAY(4) OF INTEGER; 6 va va_type := va_type(2,4); -- varray 7 8 TYPE IntegerListType IS TABLE OF INTEGER; 9 nt IntegerListType := IntegerListType(1,3,5); -- nested table 10 11 BEGIN 12 intList(1):=3; intList(2):=6; intList(3):=9; intList(4):= 12; 13 DBMS_OUTPUT.PUT('intList.COUNT = '); print(intList.COUNT); 14 DBMS_OUTPUT.PUT('intList.LIMIT = '); print(intList.LIMIT); 15 16 DBMS_OUTPUT.PUT('va.COUNT = '); print(va.COUNT); 17 DBMS_OUTPUT.PUT('va.LIMIT = '); print(va.LIMIT); 18 19 DBMS_OUTPUT.PUT('nt.COUNT = '); print(nt.COUNT); 20 DBMS_OUTPUT.PUT('nt.LIMIT = '); print(nt.LIMIT); 21 END; 22 / intList.COUNT = 4 intList.LIMIT = NULL va.COUNT = 2 va.LIMIT = 4 nt.COUNT = 3 nt.LIMIT = NULL PL/SQL procedure successfully completed. SQL>