Gabarito: c)
Os triggers em bancos de dados são procedimentos automáticos disparados por eventos de DML (Data Manipulation Language) como INSERT, UPDATE ou DELETE. A ordem de execução dos triggers depende do tipo e do momento em que são configurados para executar.
I. Trigger 1 - BEFORE statement: Este trigger é executado antes de qualquer operação na tabela, seja ela um INSERT, UPDATE ou DELETE, e é disparado uma única vez para o comando inteiro, antes de qualquer processamento de linha individual.
II. Trigger 2 - BEFORE for each row: Este trigger é executado antes de cada linha ser processada. Assim, se a operação afetar múltiplas linhas, este trigger será disparado múltiplas vezes, uma para cada linha afetada, após o Trigger 1.
III. Trigger 3 - AFTER statement: Este trigger é disparado após a conclusão de todas as operações na tabela, mas apenas uma vez para o comando inteiro, após todos os processamentos de linha.
IV. Trigger 4 - AFTER for each row: Este trigger é executado após cada linha ser processada individualmente, sendo disparado múltiplas vezes se múltiplas linhas forem afetadas.
Portanto, a sequência correta de disparo dos triggers é: primeiro o Trigger 1 (BEFORE statement), seguido pelo Trigger 2 (BEFORE for each row), depois o Trigger 4 (AFTER for each row) e, por último, o Trigger 3 (AFTER statement).
Os triggers em bancos de dados são procedimentos automáticos disparados por eventos de DML (Data Manipulation Language) como INSERT, UPDATE ou DELETE. A ordem de execução dos triggers depende do tipo e do momento em que são configurados para executar.
I. Trigger 1 - BEFORE statement: Este trigger é executado antes de qualquer operação na tabela, seja ela um INSERT, UPDATE ou DELETE, e é disparado uma única vez para o comando inteiro, antes de qualquer processamento de linha individual.
II. Trigger 2 - BEFORE for each row: Este trigger é executado antes de cada linha ser processada. Assim, se a operação afetar múltiplas linhas, este trigger será disparado múltiplas vezes, uma para cada linha afetada, após o Trigger 1.
III. Trigger 3 - AFTER statement: Este trigger é disparado após a conclusão de todas as operações na tabela, mas apenas uma vez para o comando inteiro, após todos os processamentos de linha.
IV. Trigger 4 - AFTER for each row: Este trigger é executado após cada linha ser processada individualmente, sendo disparado múltiplas vezes se múltiplas linhas forem afetadas.
Portanto, a sequência correta de disparo dos triggers é: primeiro o Trigger 1 (BEFORE statement), seguido pelo Trigger 2 (BEFORE for each row), depois o Trigger 4 (AFTER for each row) e, por último, o Trigger 3 (AFTER statement).