Base De Datos II

Páginas: 8 (1782 palabras) Publicado: 6 de marzo de 2015
Base de Datos II
CURSORES
PL/SQL
Definición de Cursor
Útiles para las consultas que devuelven más de una fila.
Son declarados y nombrados por el programador, y manipulados por medio de sentencias específicas en las acciones ejecutables del bloque.
PL/SQL
Control de Cursores
1º. Crear un área SQL específica  DECLARE
2º. Identificar el juego activo  OPEN
3º. Cargar la fila actual envariables  FETCH
4º. Si todavía existen filas sin leer, volver a 3º.
5º. Si no existen más filas a leer  CLOSE
PL/SQL
Declaración del Cursor
Sintaxis:

No incluya la cláusula INTO en la declaración del cursor.
Si es necesario procesar filas en algún orden, incluya la cláusula ORDER BY.
PL/SQL
Ejemplo de Declaración

PL/SQL
Apertura del Cursor
Sintaxis:

Si la consulta no devuelve ninguna fila, no se produciráninguna excepción al abrir el cursor.
Para los cursores declarados con la cláusula FOR UPDATE, la sentencia OPEN bloquea estas filas.
PL/SQL
Recuperación de Datos
Sintaxis:

Incluya, en el FETCH, el mismo número de variables que las definidas en el cursor, y en el mismo orden.
Compruebe si el cursor tiene filas.
PL/SQL
Cierre del Cursor
Sintaxis:

Cierre el cursor una vez completado el procesamientode las filas.
Si es necesario, vuelva a abrir el cursor.
No intente recuperar los datos de un cursor una vez que ha sido cerrado (INVALID_CURSOR).
PL/SQL
Atributos de Cursores
Proporcionan información de estado del cursor:

PL/SQL
El Atributo %ISOPEN
Utilice el atributo de cursor %ISOPEN antes de ejecutar una recuperación para comprobar si el cursor está abierto.
Ejemplo:

PL/SQL
Atributos%NOTFOUND, %ROWCOUNT
Utilice %ROWCOUNT para recuperar un número exacto de filas.
Utilice %NOTFOUND para determinar cuándo salir del bucle de lectura del cursor.
Antes de la primera recuperación, %NOTFOUND es NULL, así que si FETCH no se ejecuta nunca satisfactoriamente, no se saldría nunca del bucle de lectura.
PL/SQL
Ejemplo %NOTFOUND, %ROWCOUNT
Ejemplo:

PL/SQL
Bucles FOR de Cursor
Sintaxis:

Apertura,recuperación y cierre implícitos.
No declare el registro, está declarado implícitamente.
PL/SQL
Cursores con Parámetros
Sintaxis:

Permite abrir un cursor varias veces con un juego activo distinto cada vez.
PL/SQL
Cursores con Parámetros
Cada parámetro formal de la declaración del cursor debe tener un parámetro real correspondiente en la sentencia OPEN.
La sintaxis de los parámetros es:

PL/SQLCursores con Parámetros
Transfiera el número de departamento y el cargo a la cláusula WHERE:

PL/SQL
Cláusula FOR UPDATE
Sintaxis:

El bloqueo explícito le permite denegar el acceso mientras dura una transacción.
Bloquee las filas antes de la actualización o supresión.
La cláusula FOR UPDATE es la última cláusula de una sentencia SELECT, incluso después del ORDER BY.
NOWAIT devuelve un error deOracle si las filas han sido bloqueadas por otra sesión, de lo contrario se espera.
PL/SQL
Cláusula WHERE CURRENT OF
Sintaxis:

Incluya la cláusula FOR UPDATE en la definición del cursor para bloquear las filas.
Especifique WHERE CURRENT OF en la sentencia UPDATE o DELETE para referirse a la fila actual del cursor.
Tipos de datos en PL/SQL
   Cada constante y variable tienen un tipo de dato en elcual se especifica el formato de almacenamiento, restricciones y rango de valores validos.
PL/SQL proporciona una variedad predefinida de tipos de datos . Casi todos los tipos de datos manejados por PL/SQL son similares a los soportados por SQL. A continuación se muestran los TIPOS de DATOS más comunes:
NUMBER (Numérico): Almacena números enteros o de punto flotante, virtualmente de cualquierlongitud, aunque puede ser especificada la precisión (Número de digitos) y la escala que es la que determina el número de decimales.
-- NUMBER [(precision, escala)]
saldo NUMBER(16,2);
/* Indica que puede almacenar un valor numérico de 16
posiciones, 2 de ellas decimales. Es decir, 14 enteros
y dos decimales */
CHAR (Caracter): Almacena datos de tipo caracter con una longitud maxima de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Base De Datos Ii
  • Base De Datos Ii
  • Base de datos II notas
  • Base Datos II
  • Base de datos ii
  • Guia Base De Datos Ii Saeti 33
  • BASE DE DATOS , base de datos
  • S Labo 2014 II 05 Base De Datos Avanzado II 0267

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS