Sie sind auf Seite 1von 9

Servicio Nacional de Aprendizaje SENA

Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 1 de 9

TALLER PRCTICO PL/SQL SEGUNDA PARTE


Registros
Permite crear estructuras que albergan un conjunto de tipos de datos. Por
ejemplo, podemos crear el registro PERSONA con los campos cdigo, nombre y
edad, cada uno de estos campos con diferentes tipos de datos.
Ejemplo #1A Resuelto: Imprimir los datos cdigo, nombre y edad de una
persona, usando una variable tipo registro

Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 1

Servicio Nacional de Aprendizaje SENA


Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 2 de 9

Adicional:
Tambin podemos crear registros que mantengan los mismos campos y tipos de
datos que una tabla.
DECLARE
MIVARIABLE DBA_OBJECTS%ROWTYPE

Ejercicio #1A Propuesto: Imprimir los datos de un empleado de la tabla


employeers usando una variable tipo registro.
Ejercicio #1B Propuesto: Explique el siguiente cdigo e imprima los datos del
registro T_REGISTRO:

Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 2

Servicio Nacional de Aprendizaje SENA


Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 3 de 9

Ejercicio #1C Propuesto: Imprimir nombre, apellido y salario de los empleados


de un departamento dado. Recibir el nombre del departamento con accept. Debe
usar estructura tipo registro para almacenar la informacin de los empleados.

Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 3

Servicio Nacional de Aprendizaje SENA


Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 4 de 9

TABLAS PL/SQL
TYPE <NOMBRE_TIPO_LISTA> IS TABLE OF <TIPO_DATO_NODO> INDEX BY
BINARY_INTEGER|PLS_INTEGER|VARCHAR2(#)

Ejemplo #2A Resuelto: Imprimir los nmeros del 1 al 10, a travs de un arreglo
creado con una tabla pl/sql

Consideraciones con los INDEX BY:


No pueden ser un tipo de dato de una columna de una tabla.
No requieren ser inicializados las variables de tipo INDEX BY.
Los nodos del arreglo no requieren ser inicializados.
Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 4

Servicio Nacional de Aprendizaje SENA


Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 5 de 9

Ejemplo #2B Resuelto: Crear un arreglo con subndices enteros y que reciba
valores varchar. Imprima los valores.

Ejercicio 2A Propuesto: Ejecute y explique del ejemplo 11B, qu significa


v_vector.first, v_vector.last, v_vector.exists, v_vector.next.
Ejercicio 2B Propuesto: Almacenar los nmeros del 1 al 100 en un arreglo e
imprimir una lista de los nmeros pares del 1 al 100 con el ttulo NMEROS
PARES y otra lista con los nmeros impares con el ttulo NMEROS IMPARES.

Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 5

Servicio Nacional de Aprendizaje SENA


Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 6 de 9

Ejemplo #3 Resuelto: Imprimir los nombres de todos los empleados de la tabla


employees. Usar un arreglo para guardar los registros.

Ejercicio #3A Propuesto: Hacer el mismo ejercicio resuelto #3 usando cursor


explcito
Ejercicio #3B Propuesto: Hacer el mismo ejercicio resuelto #3 usando diferentes
formas para recorrer el arreglo: con la funcin first y last, con la funcin count
Ejercicio #3C Propuesto: Imprimir los nombres de todos los empleados de la
tabla employees de una ciudad dada. Debe recibir el nombre de la ciudad con un
accept. Debe usar un arreglo cuyo ndice sea el cdigo del empleado.
Ejercicio #3D Propuesto: Imprimir los nombres de todos los empleados de la
tabla employees de una ciudad dada. Debe recibir el nombre de la ciudad con un
accept. Debe usar un arreglo cuyo ndice sea el nombre del empleado.
Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 6

Servicio Nacional de Aprendizaje SENA


Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 7 de 9

Ejemplo #4 Resuelto: Imprima nombre, apellido y salario de todos los empleados


de la tabla employees. Usar arreglo de registros para implementar la solucin y un
cursor genrico

Ejercicio #4A Propuesto: Hacer el mismo ejercicio resuelto #4 usando cursor


explcito
Ejercicio #4B Propuesto Imprimir nombre del pas y nmero de empleados en 3
listas tituladas as: (Usar arreglos y registros)
PAISES CON MENOS DE 10 EMPLEADOS
PAISES CON EMPLEADOS ENTRE 10 Y 50 EMPLEADOS
PAISES CON MS DE 50 EMPLEADOS
Ejercicio #4C Propuesto: Usar cursor explcito para resolver el ejercicio anterior

Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 7

Servicio Nacional de Aprendizaje SENA


Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 8 de 9

BULK COLLECT
PL/SQL nos permite leer varios registros en una tabla de PL con un nico acceso
a travs de la instruccin BULK COLLECT. Esto nos permitir reducir el nmero de
accesos a disco, por lo que optimizaremos el rendimiento de nuestras
aplicaciones. Como contrapartida el consumo de memoria ser mayor.
Ejemplo #5 Resuelto: Realizar una consulta de la tabla COUNTRIES con un
nico acceso. Guardar en un arreglo e imprimir el resultado a travs de un ciclo

Ejercicio 5A Propuesto: Realizar el mismo ejemplo 5, usando una variable tipo


registro
Ejercicio 5B Propuesto: Realizar el mismo ejemplo 5, usando el atributo
ROWTYPE

Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 8

Servicio Nacional de Aprendizaje SENA


Sistema de
Gestin de la
Calidad

Centro de Electricidad y Automatizacin Industrial CEAI


TECNOLOGA EN ANLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
TALLER PRCTICO PL/SQL SEGUNDA PARTE

Fecha:
Agosto 2014
Versin 1.0
Pgina 9 de 9

VARRAY
Los VARRAY tambin permiten crear arreglos en PLSQL, pero tienen un tamao
limitado desde su especificacin. Los elementos en el varray se almacenan
comenzando en el ndice 1 hasta la longitud mxima declarada en el tipo varray.
Sintaxis:
TYPE
<NOMBRE_TIPO_LISTA>
IS
VARRAY(#
NODOS)
OF
<TIPO_DATO_NODO>
Ejemplo #6 Resuelto: Imprimir una lista de nmeros de 1 a 10 usando un arreglo
VARRAY

Ejercicio #6A Propuesto: Mostrar en pantalla los primeros 40 empleados del


departamento con cdigo 50 usando un arreglo varray

Diana Pilar Solarte Astaza Instructora CEAI SENA Valle

Pgina 9

Das könnte Ihnen auch gefallen