pg.ddx.io  pgsql-it-generale@postgresql.org mailing list archive  
help / color / mirror / Atom feed
trigger on delete cascade
2+ messages / 2 participants
[nested] [flat]

* trigger on delete cascade
@ 2011-02-09 01:31 Ludovico Bonifacio <ludoedgar@yahoo.it>
  2011-02-20 14:42 ` Re: trigger on delete cascade fluca1978@infinito.it
  0 siblings, 1 reply; 2+ messages in thread

From: Ludovico Bonifacio @ 2011-02-09 01:31 UTC (permalink / raw)
  To: pgsql-it-generale

Ciao a tutti! 
 Esiste un modo per attivare un trigger(il cui scopo è di salvare ciò che si 
elimina) 
non  su un evento sulla tabella per cui è stato creato ma per effetto di una 
cancellazione di un valore riferito in un altra tabella??
Ad esempio ho:
il trigger che si attiva
AFTER DELETE ON Documento

e in Utente ho
 id_utente ON DELETE  CASCADE

quindi appena cancello un utente da Utente, giustamente il trigger non riconosce 
la DELETE perchè la rileva su Documento. 
Esiste un modo per fargli rilevare al Trigger di attivarsi anche nel caso  di 
eliminazioni on cascade da altre tabelle(in modo da salvare nella tabella 
archivio ciò che viene eliminato da Documento)?
Se si quale?
Se no, come potrei fare?

Nello specifico le tabelle sono così:
CREATE TABLE Documento
(
id_documento INTEGER PRIMARY KEY,
id_utente INTEGER REFERENCES Utente(id_utente)
ON UPDATE CASCADE
ON DELETE CASCADE);

CREATE TABLEUtente
(
id_utente INTEGER PRIMARY KEY;
);

Grazie in anticipo a tutti


      

^ permalink  raw  reply  [nested|flat] 2+ messages in thread

* Re: trigger on delete cascade
  2011-02-09 01:31 trigger on delete cascade Ludovico Bonifacio <ludoedgar@yahoo.it>
@ 2011-02-20 14:42 ` fluca1978@infinito.it
  0 siblings, 0 replies; 2+ messages in thread

From: fluca1978@infinito.it @ 2011-02-20 14:42 UTC (permalink / raw)
  To: pgsql-it-generale

MI viene da dire che quello che potrebbe fare al caso tuo sia una regola su 
Documento che scatti al DELETE e che esegua INSTEAD la delete cascade e una 
stored procedure (la stessa che avresti usato per il trigger).

Luca


On Wednesday, February 09, 2011 02:31:29 AM Ludovico Bonifacio's cat walking 
on the keyboard wrote:
> Ciao a tutti!
>  Esiste un modo per attivare un trigger(il cui scopo è di salvare ciò che
> si elimina)
> non  su un evento sulla tabella per cui è stato creato ma per effetto di
> una cancellazione di un valore riferito in un altra tabella??
> Ad esempio ho:
> il trigger che si attiva
> AFTER DELETE ON Documento
> 
> e in Utente ho
>  id_utente ON DELETE  CASCADE
> 
> quindi appena cancello un utente da Utente, giustamente il trigger non
> riconosce la DELETE perchè la rileva su Documento.
> Esiste un modo per fargli rilevare al Trigger di attivarsi anche nel caso 
> di eliminazioni on cascade da altre tabelle(in modo da salvare nella
> tabella archivio ciò che viene eliminato da Documento)?
> Se si quale?
> Se no, come potrei fare?
> 
> Nello specifico le tabelle sono così:
> CREATE TABLE Documento
> (
> id_documento INTEGER PRIMARY KEY,
> id_utente INTEGER REFERENCES Utente(id_utente)
> ON UPDATE CASCADE
> ON DELETE CASCADE);
> 
> CREATE TABLEUtente
> (
> id_utente INTEGER PRIMARY KEY;
> );
> 
> Grazie in anticipo a tutti



^ permalink  raw  reply  [nested|flat] 2+ messages in thread


end of thread, other threads:[~2011-02-20 14:42 UTC | newest]

Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2011-02-09 01:31 trigger on delete cascade Ludovico Bonifacio <ludoedgar@yahoo.it>
2011-02-20 14:42 ` fluca1978@infinito.it

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox