Se puede hacer algo del tipo:
create triger.........
DECLARE
CURSOR c;
BEGIN
IF (condicion) THEN
c:="mi consulta"
ELSE
c:="otra consulta"
END IF;
....
....
....
Si es asi, ¿como se hace?
| |||
alguien entiende de cursores en triggers?? Se puede hacer algo del tipo: create triger......... DECLARE CURSOR c; BEGIN IF (condicion) THEN c:="mi consulta" ELSE c:="otra consulta" END IF; .... .... .... Si es asi, ¿como se hace? |
| |||
Respuesta: alguien entiende de cursores en triggers?? Por ejemplo, si utilizas el ref cursor predefinido (para abreviar la explicación): DECLARE ... refcur sys_refcursor; ... BEGIN IF A THEN OPEN refcur FOR SELECT empno, ename FROM emp; ....... ELSE OPEN refcur FOR SELECT empno, ename FROM emp WHERE deptno = 30; ......... END IF; ..... CLOSE refcur; ....... END; Espero que te sirva de ayuda. Saludos |
| |||
Respuesta: alguien entiende de cursores en triggers?? Muchas gracias! No me funciono lo que me has dado, pero buscando por sys cursor encontre la solcion. Hay que declararlo de la siguiente manera: DECLARE type r_cursor is REF CURSOR; refcur r_cursor; id tabla.codigo%TYPE; y luego seguir BEGIN OPEN refcur FOR SELECT ..... -- consulta LOOP FETCH refcur INTO cod; EXIT WHEN refcur%NOTFOUND; -- ... codigo END LOOP; CLOSE refcur; |
| |||
Respuesta: alguien entiende de cursores en triggers?? P.D: la web donde encontre la explicacion (Esta en inglés, pero secillo de entender): [URL="http://www.devshed.com/c/a/Oracle/Working-with-REF-CURSOR-in-PL-SQL/"]http://www.devshed.com/c/a/Oracle/Working-with-REF-CURSOR-in-PL-SQL/[/URL] TEMA SOLUCIONADO. |
Etiquetas: |