Este un blog que cambio de rumbo... antes era relacionado a "n" temas ahora será exclusivo para detallar todo lo que pude aprender en Oracle =)

sábado, 24 de julio de 2010

PLSQL (Procedural Language extension to SQL) Introducción



Beneficios de PL/SQL
-PL/SQL permite la integración de procedimientos construidos con SQL.Permite especificar no sólo que hacer con un comando SQL , sino como hacerlo, dando un mejor control para su ejecución.
-Mejora la peformance, ya que a través de PLSQL podemos unir varias sentencias SQl en un solo programa, por lo tanto se envía un solo bloque a la BD en lugar de enviar una sentencia SQL a la vez.
-Modularized programa development: la unidad basica en un programa PL/SQL es el bloque.Los Bloques se pueden hallar secuencialmente o se pueden encontrar anidados.
Modularizar consiste en utilizar procedimientos, funciones, paquetes.
-Integración con herramientas, PL/SQL se encuentra integradoi con herramientas como Oracle Forms, Oracle Reports, otros.
-Portable: PLSQL corre en cualquiere servidor Oracle.
-Manejo de Excepciones, permite manejar eficientemente las excepeciones.


Estructura de un Bloque PL/SQL

Tiene 3 secciones :
1.DECLARATIVE
DECLARE (opcional)
-Permite declarar variables, crusores y excepciones

2.EXECUTABLE(inicia con begin y finaliza con end) esta sección necesariamente debe contener al menos una sentencia.
BEGIN(mandatorio)
- SQL y PL/SQL sentencias
EXCEPTION(opcional)
- Acciones a desarrollar cuando ocurren errores.
END;(mandatorio)

3.EXCEPTION HANDLE(Manejo de excepciones) esta sección se encuentra anidada dentro de la sección ejecutable e inicia con la palabra EXCEPTION


TIPOS DE BLOQUES
Existen 3 tipos de bloques que comprenden un Programa PL/SQL
1.Anónimos
No tienen nombre y son compilados cada vez que la aplicación es ejecutada ya que estos bloques nose almacenan en la bd.
2.Subprogramas(Procedimientos & Funciones)
Tienen un nombre especifico y son almacenados en la BD, por ello podemos invocarlos cuando lo necesitemos. Los tipos son : procedimientos y funciones, los primeros desarrollan una acción y las funciones calculan y DEBEN retornan un valor.

Ejemplos de un bloque anónimo



1. Habilitar la salida de mensajes en SQL* PLUS

set server output on

2. Utilizaremos el paquete de oracle para mostrar los mensajes:

DBMS_OUTPUT.PUT_LINE();
3. detallamos un bloque anónimo :

Finalizamos el bloque con el "/" para proceder a su ejecución.






No hay comentarios.: