Hongos

Páginas: 10 (2485 palabras) Publicado: 24 de abril de 2013
Softdownload.com.ar

Oracle básico (IV): Programación en PL/SQL
El lenguaje de programación de Oracle, llamado PL/SQL, es un lenguaje portable, procedural y
de transacción muy potente y de fácil manejo, con las siguientes características
fundamentales:
1.

Incluye todos los comandos de SQL estudiados en el artículo Oracle Básico I y II (ver
revista Algoritmo números 8 y 9,respectivamente):
-

2.

SELECT
INSERT
UPDATE
DELETE.

Es una extensión de SQL, ya que este es un lenguaje no completo dado que no incluye
las herramientas clásicas de programación. Por eso, PL/SQL amplia sus posibilidades al
incorporar las siguientes sentencias:
-

Control condicional
IF ... THEN ... ELSE ... ENDIF

-

Ciclos
FOR ... LOOP
WHILE ... LOOP

3.

Incorpora opcionesavanzadas en:

-

Control y tratamiento de errores llamado excepciones.
Manejo de cursores.
Variedad de procedimientos y funciones empaquetadas incorporadas en el módulo
SQL*Forms para la programación de disparadores (Trigger) y procedimientos del usuario
(Procedure).

Estructura del bloque de código
Veamos a continuación la organización del bloque de código de PL/SQL, compuesto por cuatrosecciones DECLARE, BEGIN, EXCEPTION y END como se detalla en el fuente 1:

/* --- Fuente 1 ----------------------------------------------------------[>]
Etiqueta que identifica al Bloque.
[DECLARE]
Declaración de
Variable
Constante
Cursor

Se inicializa con un valor que no se puede modificar.
Area de trabajo que contiene los datos de la fila de
la tabla en uso. El cursor es el resultadode una
sentencia SELECT.
Página 1 de 9

No te olvides de Visitar la web de los Mejores Cursos Gratisl Softdownload.com.ar

Softdownload.com.ar
ExcepciónVariables
para control de errores.
BEGIN
Código.
[EXCEPTION]
Control y tratamiento de errores.
Es el punto al que se transfiere el control del programa siempre que
exista un problema. Los indicadores de excepción pueden ser definidospor
el usuario o por el sistema, como es por ejemplo la excepción ZERO_DIVIDE.
Las excepciones se activan automáticamente al ocurrir un error, existiendo
la definición de la excepción OTHERS que considera aquellos errores no
definidos y que siempre se ubica al final de todas las excepciones.
END [nombre del bloque];
Fin del Bloque.

Con el ejemplo del fuente 2 ilustraremos las distintassecciones que componen un bloque de
código en PL/SQL. En este caso deseamos calcular la venta promedio del día y, en caso que la
misma sea menor a lo esperado, se debe registrar en la tabla VENTABAJA.

/* --- Fuente 2 ----------------------------------------------------------DECLARE
esperada
CONSTANT NUMBER(5) := 500;
xtotal
NUMBER;
xcant
NUMBER;
xprom
NUMBER;
BEGIN
/*Asigna a lavariable xtotal el TOTAL de las ventas
y a la variable xcant la cantidad de ventas del día.
*/
SELECT SUM(valor),COUNT(valor) INTO xtotal,xcant
FROM ventas WHERE fecha=sysdate;
xprom:=xtotal/xcant;
IF xprom >= esperada THEN
message('Ventas por encima de la esperada');
pause;
ELSE
/*Se registra en la tabla ventabaja las ventas por debajo
del promedio esperado */
INSERT INTO ventabaja VALUES(sysdate,xprom);
END IF;
EXCEPTION
WHEN ZERO_DIVIDE THEN
message('No se realizaron ventas en el día');
pause;
WHEN OTHERS THEN
message('Error Indefinido');
pause;
END;

Asignación de valores
Las dos formas que existen para asignar valores a variables de memoria, vistas en el ejemplo
anterior, son:
-

Con el operador de asignación :=, como cuando calculamos el promedio de lasventas
asignándole valor a la variable xprom con la siguiente sentencia:

Página 2 de 9
No te olvides de Visitar la web de los Mejores Cursos Gratisl Softdownload.com.ar

Softdownload.com.ar
xprom:=xtotal/xcant;

-

Con la sentencia SELECT que contiene la orden INTO, como se muestra, es la asignación
de valores a las variables xtotal y xcant con el siguiente código:
SELECT SUM(valor),...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Hongos
  • Hongos
  • Hongos
  • Hongo
  • hongos
  • los hongos
  • hongos
  • HONGOS

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS