PDA

Visualizza la versione completa : [PL SQL] trigger e loop


amok09
15-06-2009, 19:30
possibile insierire un loop in un trigger?
tipo
CREATE TRIGGER nometrigger
AFTER DELETE ON nometabella
FOR EACH ROW
BEGIN
INSERT INTO TEMP
SELECT ..
FROM ...
WHERE ...

LOOP
INSERT INTO TEMP
SELECT ..
FROM ...
WHERE ...
ENDLOOP

DELETE FROM nometabella
WHERE..

END


corretto ???? (lapsus)
grazie!

YuYevon
15-06-2009, 19:59
S ma quel loop scritto in quel modo sarebbe "infinito". Devi scrivere un predicato di uscita, secondo questo schema:

LOOP
--qualcosa
--ancora altro
EXIT WHEN --qualche condizione
END LOOP;

ovviamente il test sulla condizione lo puoi mettere in qualsiasi punto del corpo del ciclo, non necessariamente alla fine.

Loading