Aquí doy un ejemplo de un programa PL/SQL para agregar elementos a una tabla existente (colección).
Aunque una tabla no tiene restricciones, no puede asignar a un elemento que aún no existe y, por lo tanto, haría que la tabla aumentara de tamaño. si intenta hacer esto, PL/SQL generará el error "ORA-6533:Subíndice más allá de la cuenta " que es equivalente a SUBSCRIPT_BEYOND_COUNT
excepción predefinida. Esto se ilustra con el siguiente ejemplo:
Ejemplo:agregar elementos a una tabla existente en 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;
CONSEJO
Puede aumentar el tamaño de una tabla anidada utilizando el método EXTEND.
Véase también:
- Oracle PL/SQL:colecciones (tablas anidadas)
- Tipo de tabla en Oracle PL SQL Ejemplo