Las tablas de PL/SQL son tipos de datos que nos permiten almacenar varios valores del mismo tipo de datos.
Una tabla PL/SQL :
- Es similar a un array
- Tiene dos componenetes: Un índice de tipo BINARY_INTEGER que permite acceder a los elementos en la tabla PL/SQL y una columna de escalares o registros que contiene los valores de la tabla PL/SQL
- Puede incrementar su tamaño dinámicamente.
TYPE <nombre_tipo_tabla> IS TABLE OF <tipo_datos> [NOT NULL] INDEX BY BINARY_INTEGER ; |
DECLARE /* Definimos el tipo PAISES como tabla PL/SQL */ TYPE PAISES IS TABLE OF NUMBER INDEX BY BINARY_INTEGER ; /* Declaramos una variable del tipo PAISES */ tPAISES PAISES; BEGIN tPAISES(1) := 1; tPAISES(2) := 2; tPAISES(3) := 3; END; |
No es posible inicializar las tablas en la inicialización.
El rango de binary integer es –2147483647.. 2147483647, por lo tanto el índice puede ser negativo, lo cual indica que el índice del primer valor no tiene que ser necesariamente el cero.
Tablas PL/SQL de registros
Es posible declarar elementos de una tabla PL/SQL como de tipo registro.
DECLARE TYPE PAIS IS RECORD ( CO_PAIS NUMBER NOT NULL , DESCRIPCION VARCHAR2(50), CONTINENTE VARCHAR2(20) ); TYPE PAISES IS TABLE OF PAIS INDEX BY BINARY_INTEGER ; tPAISES PAISES; BEGIN tPAISES(1).CO_PAIS := 27; tPAISES(1).DESCRIPCION := 'ITALIA'; tPAISES(1).CONTINENTE := 'EUROPA'; END; |
No hay comentarios:
Publicar un comentario