Aqui estou dando um exemplo de um programa PL/SQL para adicionar elementos a uma tabela existente (coleção).
Embora uma tabela seja irrestrita, você não pode atribuir a um elemento que ainda não existe e, portanto, faria com que a tabela aumentasse de tamanho. se você tentar fazer isso, o PL/SQL gerará o erro "ORA-6533:Subscrito além da contagem " que é equivalente ao
SUBSCRIPT_BEYOND_COUNT
exceção predefinida. Isto é ilustrado pelo exemplo seguinte:Exemplo - Adicionando Elementos a uma Tabela Existente em PL/SQL
DECLARE TYPE t_NumbersTab IS TABLE OF NUMBER; v_Numbers t_NumbersTab := t_NumbersTab(1, 2, 3); BEGIN --v_Numbers was initialized to have 3 elements. So the --following assignment are all legal. v_Numbers(1) := 7; v_Numbers(2) := -1; --However, this assignment will raise ORA6533. v_Numbers(4) := 4; END;
DICA
Você pode aumentar o tamanho de uma tabela aninhada usando o método EXTEND.
Veja também:
- Oracle PL/SQL – Coleções (tabelas aninhadas)
- Tipo de tabela no exemplo Oracle PL SQL