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 |
No hay comentarios:
Publicar un comentario