Tutoriales
manuales, tutoriales, programacion programming tutorials, programming manuals
 
Registrate gratis
45.000 registrados
,
Tutoriales - Diseño - Trucos - Foros/Comunidad - Software - Recursos - HerramientasOnline - Biblioteca
Webmasters -Codigo Fuente -Libros -Cursos Propios -Comunidad -DirectorioN -Cursos Becas MastersN
Manuales Propios: MySQL - SQL - Visual Basic - W.A.P. - Photoshop - phpnuke
-
ir a pagina de incio y ver todos los manuales
Manual de Oracle

Bloques de instrucciones PL/SQL

A continuación se muestra como es la estructura general de los bloques de instrucciones de PL/SQL que se usarán mas adelante en la creación de procedimientos, funciones y triggers.

PL/SQL (Procedural Language/SQL) es una extensión de SQL, que agrega ciertas construcciones propias de lenguajes procedimentales, obteniendose como resultado un lenguaje estructural mas poderoso que SQL. La unidad de programación utilizada por PL/SQL es el bloque. Todos los programas de PL/SQL están conformados por bloques. Tipicamente, cada bloque lleva a cabo una acción lógica en el programa. Un bloque tendrá siempre la siguiente estructura:

DECLARE

//Sección declarativa: variables, tipos, y subprogramas
//de uso local

BEGIN

//Sección ejecutable: las instrucciones procedimentales, y de SQL
//aparecen aquí. Es la unica sección obligatoria en el bloque.

EXCEPTION

//Sección de manejo de excepciones. Las rutinas de manejo de errores
//aparecen aqui

END;

Solo se requiere que aparezca la sección ejecutable. Lo demas es opcional. Las unicas instrucciones SQL permitidas en un bloque PL/SQL son INSERT, UPDATE, DELETE y SELECT, ademas de algunas instrucciones para manipulación de datos, e instrucciones para control de transacciones. Otras instrucciones de SQL como DROP, CREATE o ALTER no son permitidas. Se permite el uso de comentarios estilo C (/* . . .*/). PL/SQL no es case sensitive por lo que no hay distinción entre nombres con mayusculas y minusculas.

En la sección de declaraciones, se indican las variables que serán usadas dentro del bloque y sus tipos. Por ejemplo:

DECLARE
myBeer VARCHAR(20);
price NUMBER(6,2);

En algunos casos, es posible que se desee que el tipo de una variable coincida con el tipo usado para una columna de una tabla determinada, en esos casos se puede usar la construcción:

DECLARE
myBeer Beers.name%TYPE;

Con lo cual se logra que la variable myBeer tenga el mismo tipo que la columna name de la tabla Beers.

Tambien es posible inicializar las variables, mediante el operador :=. Ademas, mediante el uso del mismo operador es posible hacer asignaciones en el cuerpo del programa. Por ejemplo:

DECLARE
price NUMBER := 300;
BEGIN
price := price + 150;
END;
.
run

La ejecución de este bloque no tendrá ningun efecto, ya que no se están haciendo cambios sobre la base de datos.

Ademas es posible usar sentencias condicionales y ciclos dentro de los bloques de PL/SQL. Una sentencia condicional tipica es de la forma:

IF (condicion)
THEN (lista de acciones)
ELSE (lista de acciones)
END IF;

Si se desea, se puede hacer el uso de varios casos de condición, mediante el uso de:

IF . . . THEN . . .
ELSIF . . . THEN . . .
ELSIF . . . THEN . . .
.
.
.
ELSE . . .
END IF;

En ambos casos, la clausula ELSE es opcional.

Si se desea crear un lazo, se puede usar la instrucción:

LOOP
lista_de_instrucciones
END LOOP;

Al menos alguna de las instrucciones debe ser:

EXIT WHEN condicion;

De esta manera, el lazo terminará cuando la condición sea verdadera. Además es posible utilizar la instrucción:

WHILE (condicion) LOOP
lista_de_instrucciones
END LOOP;

De esta forma, el ciclo solo se inicia si la condicion es verdadera en principio. Es posible que el programa nunca entre en el ciclo. Usando la instrucción LOOP se garantizaba que siempre se ejecutaría el cuerpo del ciclo al menos una vez. Por último, es posible usar ciclos que se ejecuten un numero predeterminado de veces, mediante el uso de la instrucción:

FOR i IN a..b LOOP
lista_de_instrucciones
END LOOP;

En este caso i es una variable de uso local, por lo que no es necesario que sea declarada, y puede ser usada dentro del lazo, mientras que a y b son constantes.

ir a siguiente capitulo

 

Nuestros tutoriales
Tutorial de Visual Basic
Aprende Visual Basic desde 0
Tutorial de MySQL
primeros pasos en oracle
Tutorial de Oracle
primeros pasos en oracle
Tutorial de WAP
primeros pasos en WAP
Tutorial de photoshop
efectos con photoshop
Tutorial de php nuke
efectos con photoshop

 

 

 

 

 

 

 

Recomedamos: programatium I solorecursos I tutoriales I cursos becas masters I directorio de ofertas
site programatium.com : site1 - site2 - site3 - site4 - site5 - site6 - site7