← Questões de Banco de Dados

Banco de Dados · FGV · 2023

Questão comentada de Banco de Dados

Num comando de criação de um trigger no MySQL, nas recentes edições, há um conjunto de elementos sintáticos que podem ser utilizados para determinar quando os procedimentos devem ser acionados e quais são esses procedimentos. As possíveis combinações de “quando x procedimento” válidas para triggers de transações são:

Gabarito: A

No MySQL, trigger é um gatilho que dispara automaticamente quando ocorre um evento em uma tabela. A lógica básica da sintaxe é bem direta: você escolhe o momento em que ele vai agir e o tipo de operação que vai provocá-lo. Esses dois blocos são, justamente, o "quando" e o "procedimento" do enunciado. Em MySQL, os gatilhos podem ser definidos como BEFORE ou AFTER, e eles se relacionam com eventos de DML: INSERT, UPDATE e DELETE. Ou seja, você pode criar um trigger para atuar antes ou depois de uma inserção, atualização ou exclusão. Essa é a combinação clássica cobrada em prova e cai muito porque a banca troca os termos para confundir. Por isso, a alternativa A está correta: BEFORE/AFTER combinados com DELETE/INSERT/UPDATE. É exatamente a estrutura prevista para triggers em MySQL, conforme a documentação do sistema e a doutrina de banco de dados. Já os demais pares trazem palavras que não fazem parte da sintaxe de trigger no MySQL, parecendo mais invenção de prova do que comando de verdade. Resumo de prova: se aparecer trigger no MySQL, pense em momento (BEFORE/AFTER) + evento (INSERT/UPDATE/DELETE). Se a alternativa falar em coisas como CREATION, REMOTION, STARTING ou FINISHING, pode desconfiar sem dó.

Continue treinando

Questões relacionadas