Cuestión : Cur de la referencia

Tengo cursor siguiente que quiera para volver mientras que hacia fuera el parámetro usar un almacén Proc.
I quiere volver este refcursor solamente cuando ROWCOUNT > 0. ¿El expediente vacío de vuelta otro set.
How puede yo escribir un procedimiento del almacén de PLSQL que vuelven el refcursor? el
When que los expedientes son consiguiendo procesado nosotros quiere trabarse con PARA EL SALTO LOCKED.

Thanks
de la ACTUALIZACIÓN class= > " claro " del
> del " codeSnippet " del class= del
class= " lineNumbers " del
class= del
1:
2:
3:
4:
5:
>SELECT notpretty ENO, ENAME, SAL " del class= " del id= " codeSnippet749489 del
= DE LA SAL: V_LIMIT
Y DEPTNO =: V_DEPT
Y ROWNUM < 500
ORDEN POR ENO;
class= del

Respuesta : Cur de la referencia

La respuesta rápida es usted no puede hacer realmente eso.

No hay una manera de comprobar las filas vueltas en un cursor a menos que para el alcance ellas. una vez que usted las trae, usted no puede reajustar el cursor de nuevo a la primera fila.

Si la pregunta funciona relativamente aprisa usted puede seleccionar la primera fila para ver si hay por lo menos una fila.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
purgación de la tabla tab1 de la gota;
crear la tabla tab1 (carbón de leña col1 (1));

insertar en los valores tab1 (“a ");
insertar en los valores tab1 (“a ");
insertar en los valores tab1 (“a ");
confiar;


crear o substituir el myProc del procedimiento (inChar en carbón de leña, del outCur sys_refcursor hacia fuera)
es
	carbón de leña tmpChar (1);
comenzar

	--comprobar para saber si hay datos antes del resto del código
	comenzar
		seleccionar “x” en tmpChar de tab1 donde col1=inChar y rownum=1;
		excepción
			cuando NO_DATA_FOUND entonces
				raise_application_error (- 20002, “ningunos datos encontraron.  No puede continue.");
	extremo;


	abrir el outCur para col1 selecto de tab1 donde col1=inChar;


extremo;
/

demostrar los errores


--probar con variables del SQL*Plus
refcursor del myCur del var

myProc del exec (“a”: myCur);

myCur de la impresión

myProc del exec (“b”: myCur);
Otras soluciones  
 
programming4us programming4us