Oracle - cursor variable

 
Vista:

cursor variable

Publicado por CECILIA (12 intervenciones) el 14/07/2005 09:47:45
Hola a todos:

me he encontrado con el siguiente código que tengo que interpretar:

1
2
3
4
5
6
7
declare
             TYPE MCURSOR IS REF CURSOR;
              MI_CURSOR MCURSOR;
              NOMBRE VARCHAR2(100);
BEGIN
              OPEN MI_CURSOR FOR SELECT NOMBRE FROM DUAL WHERE DUMMY=1;
END;


NO ME DA ERROR, PERO NO SE QUE ESTÁ HACIENDO ESTA SENTENCIA.

¿ME PODEIS AYUDAR?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:cursor variable

Publicado por JSL (186 intervenciones) el 15/07/2005 02:15:47
EJECUTA ESTO

SELECT DUMMY FROM DUAL;

SQL> select dummy from dual;

D
-
X

COMO VERAS, DUMMY TIENE UN VALOR DE 'X' Y SI TU LO IGUALAS A 1 PUES EL CURSOR ES FALSO ...

NOMBRE NO TIENE NADA (NUL9) PERO TE MANDO EL EJEMPLO AJUSTADO ...

declare
TYPE MCURSOR IS REF CURSOR;
MI_CURSOR MCURSOR;
NOMBRE VARCHAR2(100);
BEGIN
OPEN MI_CURSOR FOR SELECT 'CECILIA' FROM DUAL WHERE DUMMY='X';
fetch mi_cursor into nombre;
dbms_output.put_line(nombre);
END;


ANTES DE CORRERLO, EN SQLPLUS EJECUTA:
SET SERVEROUTPUT ON

COMO VERAS, CECILIA ES UNA CADENA DEL CURSOR DINAMICO Y DUMMY LO IGUALO A 'X' EN EL WHERE DEL CURSOR ...

UNA VEZ ABIERTO HAY QUE HACER EL FETCH ... Y LA CADENA CECILIA LA ASIGNO A LA VARIABLE QUE DECLARASTE QUE SE LLAMA NOMBRE ...

ESPERO TE SIRVA ...


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cursor variable

Publicado por CECILIA (12 intervenciones) el 15/07/2005 09:30:20
Una última pregunta: ¿para que se utilizan este tipo de cursores?

Gracias por la respuesta, me va quedando un poco más claro : )
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cursor variable

Publicado por JSL (186 intervenciones) el 15/07/2005 19:56:55
EJEMPLO ...

DONDE TRABAJO SE USAN TABLAS MUY GRANDES .... SE HUBIERAN HECHO UNA TABLA PARTICIONADA PERO COMO SE HIZO SON TABLAS CON LA MISMA ESTRUCTURA Y CORREN PROCESOS DONDE SOLO CAMBIA LA TABLA Y ES UN PARAMETRO ...

POR EJEMPLO, EL NUMERO DE SEMANA ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar