Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Tablas temporales y colecciones, Apuntes de Programación de Bases de Datos

1. Uso de tablas temporales en PL/SQL. • Tipos de tablas temporales (globales, locales). • Beneficios para procesos intermedios. 2. Colecciones en PL/SQL. • Tipos de colecciones: INDEX BY TABLE, VARRAY, NESTED TABLE. • Métodos comunes para manipular colecciones (EXTEND, DELETE, etc.). 3. Combinar tablas temporales y colecciones en procesos. Ejercicio: Crear un proceso que use colecciones para manipular datos temporalmente antes de guardarlos en una tabla definitiva.

Tipo: Apuntes

2024/2025

A la venta desde 17/06/2025

eddrick-2
eddrick-2 🇲🇽

23 documentos

1 / 12

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Módulo 9
TABLAS TEMPORALES Y COLECCIONES
pf3
pf4
pf5
pf8
pf9
pfa

Vista previa parcial del texto

¡Descarga Tablas temporales y colecciones y más Apuntes en PDF de Programación de Bases de Datos solo en Docsity!

Módulo 9

TABLAS TEMPORALES Y COLECCIONES

Índice

Módulo 9: Tablas temporales y colecciones

Uso de tablas temporales en PL/SQL.

Tipos de tablas temporales (globales, locales).

Beneficios para procesos intermedios.

Colecciones en PL/SQL.

Tipos de colecciones: INDEX BY TABLE, VARRAY, NESTED TABLE.

Métodos comunes para manipular colecciones (EXTEND, DELETE, etc.).

Combinar tablas temporales y colecciones en procesos.

Ejercicio : Crear un proceso que use colecciones para manipular datos temporalmente antes de

guardarlos en una tabla definitiva.

Tarea

PL/SQL

Beneficios

Almacenamiento Temporal : Son ideales para almacenar datos que solo se necesitan durante una transacción

o sesión específica.

Rendimiento : Pueden mejorar el rendimiento al reducir la carga en las tablas permanentes y minimizar el

tráfico de datos.

Aislamiento de Transacciones : Los datos en las tablas temporales son aislados entre las transacciones, lo que

evita conflictos de datos.

Facilidad de Gestión : Se crean y eliminan fácilmente, sin dejar residuos en la base de datos, ya que los datos

se borran automáticamente al finalizar una transacción.

Seguridad y Privacidad : Los datos sensibles pueden ser manejados temporalmente sin almacenarse

permanentemente en la base de datos principal.

PL/SQL

Ejemplo: Usar una tabla temporal

Variable que almacena el total de salarios Insertar los datos en la tabla temporal, donde se toman los salarios mayor a 3000 Calcula la suma de los salarios en la tabla temporal y los almacena en v_total_salario Imprime el total de los salarios calculados Borra todos los registros de la tabla temporal utilizando DELETE FROM

Colecciones en PL/SQL Define un tipo de tabla asociativa empleados_tabla con índices de tipo PLS_INTEGER Declara una variable empleados de tipo empleados_tabla Asigna el valor ‘Juan Pérez’ al índice 1 de empleados Asigna el valor ‘María López’ al índice 2 de empleados Se imprimen ambos índices

Colecciones en PL/SQL Define un tipo de arreglo de tamaño fijo nombres_varray con un máximo de 5 elementos de tipo varchar2(100) Declara e inicializa una variable nombre con 3 elementos Inicia un bucle que itera desde 1 hasta el numero de elementos en nombres Imprime cada elementos de nombres.

Combinar tablas temporales y colecciones en procesos

En escenarios más complejos, puedes combinar tablas temporales con colecciones para manejar datos

intermedios en memoria y almacenar resultados en la base de datos.

Ejemplo completo

Procesar datos en una colección y almacenar los resultados en una tabla temporal.

Define un tipo de tabla anidada t_salarios que almacenan números Declara una variable salarios de tipo t_salarios Almacena el total de salarios con un valor inicial de 0 Declara e inicializa una variable como una cadena de caracteres Selecciona los salarios donde el salarios es mayor a 3000 y los recopila en salarios Itera sobre cada elemento en salarios Suma cada salario al total acumulado en v_total Imprime el total de salarios en la consola Itera sobre cada elemento en salarios Expande la lista nombres_empleados agregando un nuevo elemento Asigna un nombre genérico ‘Empleado’ concatenado con índice i a cada elemento de nombres_empleados Itera sobre los índices de la tabla salarios Inserta valores en la tabla temporal temp_empleados Inserta NULL para empleado_id, el valor de nombres_empleados(i) para nombre y el valor correspondiente de salarios(i) para salario