martes, agosto 09, 2011

DESCARGAS

Descarga los scripts de todos los ejemplos que presentamos, estan en carpetas comprimidas, asi como la descargas de la galeria de fotos que se incertaron en cada Post. Son Gratis!!


Conclusión General:

Con la creación de este blog llegamos a la conclusión que es importante para los estudiantes de Sistemas Informáticos, público en general o simplemente quienes les agraden estos temas tener los conocimientos básicos y suficientes para el manejo, control y creación de una base de datos utilizando el lenguaje PL/SQL, en este blog les explicamos claramente y con ejemplos aquellos temas importantes y básicos para poder ayudarlos en caso de que tengan dudas en la materia de Base de Datos, esperando sea de su agrado y utilizad la información que aquí se da a conocer.
La creación de este blog muestra claramente ciertos temas importantes que se deben conocer para el majeo de una base de datos con el lenguaje PL/SQL, se explican  ejemplos claros y reales de cómo ir definiendo cada bloque según la acción que se quiera realizar, ya sean básicos,  anónimos, procedimientos, funciones, cursores implícitos como explícitos, para que quien ingrese pueda entender y ayudarse con cualquier ejercicio que le den en clase.
Se muestra una introducción y fundamentos básicos y generales que se deben de tener para poder manejar el lenguaje PL/SQL
Los temas que manejamos en general son cursores, bloques anónimos, procedimientos y funciones, cada tema esta explicado claramente y con ejemplos para que se le sea más fácil la comprensión a los visitantes de nuestro blog.

CREDITOS

  • Presento para ustedes:

Equipo ConfigCOM! ©2011 Derechos Reservados
El equipo se conforma por:

  • Lupytha A. 
  • Christian R. 
  • K. Sofia
Desarrollado para Bases de Datos II
Universidad Tecnológica Fidel Velázquez
Tecnologías de la Información Área Sistemas Informáticos
3er Cuatrimestre TSU


Bibliografía extra
INNOV@ Desarrollos informáticos, ©2009
Bases de Datos II

3.4 Cursor FOR…LOOP


Se utilizan para simplificar el manejo del cursor, es decir, disminuir el código y los paso que ya habíamos tocado en el tema 3.1, la estructura de este cursor es la siguiente:
Se declara la información cursor en la sección correspondiente.
Se procesa el cursor utilizando el siguiente formato:
FOR nombrevareg IN nombrecursor LOOP
….END LOOP;
Al entrar al bucle, se abre el cursor de manera automática, se declara implícitamente la variable nombrevareg de tipo nombrecursor%ROWTYPE y se ejecuta el primer FETCH, el cual, el resultado se guardara en nombrevareg. Despues se seguirán realizando las acciones que correspondan hasta llegar al END LOOP, que sube de nuevo al FOR…LOOP ejecutandoce el siguiente FETCH y deposita nuevamente el resultado en nombrevareg y asi asta que el ciclo termine, lo que dara salida al bucle y se cerrara automáticamente el cursor.
Aquí podemos ver un ejemplo de este caso:

3.3 Entre el SQL y el PL/SQL


A veces vamos a tener la necesidad de hacer una consulta con una condición, Cuando hacemos esto con SQL se hace de la siguiente forma:
Ejemplo de EquiJoin En una consulta:


En el caso de PL/SQL se usan estructuras un poco más elaboradas, veamos el mismo ejemplo pero en un PROCEDURE:

3.2 Atributos de los cursores:

Es importante conocer estos atributos para poder manejar mejor los cursores, tenemos cuatro atributos para las consultas:

  • %FOUND: Este atributo devuelve verdadero si el último FETCH ha recuperado algún valor; en caso contrario, devuelve falso.  Si el cursor no estaba abierto devuelve error, y si estaba abierto pero no se había ejecutado aun ningún FETCH, devuelve NULL, tenemos el siguiente ejemplo:




  • %NOTFOUND: Hace lo contrario qué %FOUND. Se usa en condición de salida de bucles por ejemplo:


  • %ROWCOUNT: Devuelve el número de filas recuperadas hasta el momento por el cursor (número de FECTH realizados satisfactoriamente)

Podemos ver el sig ejemplo:


  • %ISOPEN: devuelve verdadero si el cursor está abierto.

Para explicar mejor la funcionalidad de estos atributos, ponemos la siguiente tabla para su entendimiento más preciso y comparar las diferencias entre atributos:


 
 
%FOUND
%ISOPEN
%NOTFOUND
%ROWCOUNT
OPEN
Antes
Invalid_cursor
f
Invalid_cursor
Invalid_cursor
 
Después
NULL
T
NULL
0
PRIMER FETCH
Antes
NULL
T
NULL
0
 
Después
T
T
F
1
SIGTES
Antes
T
T
F
1
 
Después
T
T
F
ULTIMO FETCH
Antes
T
T
F
N
 
Después
F
T
T
N
CLOSE
Antes
F
T
T
N
 
Después
Invalid_cursor
F
Invalid_cursor
Invalid_cursor