PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

contesto di esecuzione del trigger di database in PostgreSQL

No, dipendono totalmente dalla sessione del client, come parte della transazione che a sua volta è legata alla sessione. Vedi questo estratto da CREA TRIGGER (9.1):

Dalla tua altra domanda sembra che tu stia usando 8.4, che non ha trigger differiti, quindi è ancora più semplice. I trigger vengono eseguiti sempre alla fine dell'istruzione (l'evento trigger), il che significa prima che la conferma di esecuzione venga inviata dal server al client.

Un COMMIT immediatamente successivo sarebbe una nuova istruzione e non potrebbe essere eseguito prima che il trigger sia terminato.