Questões de Gatilhos (Triggers) (Banco de Dados)

Limpar Busca

Em sistemas de gerenciamento de bancos de dados relacionais, o SQL (Structured Query Language) é a linguagem primordial para a manipulação de dados e a automação de tarefas. A compreensão de seus comandos fundamentais, bem como a aplicação de recursos avançados, como procedimentos armazenados e triggers, é crucial para a garantia da integridade, performance e segurança dos dados. Sobre os conceitos e funcionalidades do SQL e seus componentes, assinale a alternativa correta.

  • A Triggers são objetos de banco de dados que executam automaticamente um bloco de código SQL (procedimento armazenado ou script) em resposta a eventos específicos (como INSERT, UPDATE ou DELETE) que ocorrem em uma tabela, podendo ser configurados para atuar BEFORE ou AFTER o evento, visando a imposição de regras de negócio, auditoria ou manutenção da integridade referencial.
  • B Consultas SQL utilizando o operador UNION combinam linhas de dois ou mais resultados de subconsultas distintas, desde que a ordem e o tipo de dados das colunas sejam compatíveis, automaticamente removendo linhas duplicadas e mantendo a ordem original de inserção dos resultados.
  • C Procedimentos armazenados são primariamente utilizados para manipulação da estrutura do banco de dados (DDL), sendo reotimizados a cada execução, o que contribui para o aumento do tráfego de rede devido à persistência de seu plano de execução exclusivamente no nível do cliente.
  • D O comando SQL TRUNCATE TABLE executa a exclusão de todas as linhas de uma tabela com base em condições especificadas por uma cláusula WHERE, e suas operações são registradas detalhadamente, permitindo a reversão via ROLLBACK em caso de erro em sistemas transacionais.

Em um sistema de gerenciamento de banco de dados relacional (SGBD), triggers são mecanismos que executam ações automáticas em resposta a eventos como inserções, atualizações ou exclusões em tabelas. Quando triggers são mal projetados, especialmente em cenários que envolvem múltiplas tabelas, eles podem resultar em "cascading triggers" ou "trigger storms", um comportamento em que um trigger dispara outro que, por sua vez, dispara mais triggers, potencialmente levando a loops infinitos, desempenho degradado ou dificuldades de depuração. Considere um SGBD que permite triggers aninhados sem limite estrito de profundidade. Avalie as seguintes afirmações sobre cenários de definição de triggers em um banco de dados relacional e assinale aquela que descreve um cenário de cascading triggers ou trigger storms:

  • A Um trigger BEFORE UPDATE em uma tabela que impede a modificação de uma chave primária.
  • B Um trigger BEFORE INSERT em uma tabela que atualiza um campo na mesma tabela.
  • C Um trigger AFTER INSERT em uma tabela A que causa uma inserção em uma tabela B que, por sua vez, tem um trigger AFTER INSERT que atualiza a tabela A.
  • D Um trigger AFTER UPDATE em uma tabela que insere um registro em uma tabela de auditoria relacionada.
  • E Um trigger AFTER DELETE em uma tabela que atualiza uma estatística agregada em outra tabela.

A respeito de banco de dados, julgue o próximo item.



Os triggers são baseados no modelo evento-condição-ação, no qual um evento no banco de dados dispara uma ação quando determinada condição é atingida.

  • Certo
  • Errado

A respeito de banco de dados, julgue o próximo item.

Os triggers são baseados no modelo evento-condição-ação, no qual um evento no banco de dados dispara uma ação quando determinada condição é atingida.

  • Certo
  • Errado

Um profissional da área de tecnologia da informação está projetando um sistema de gerenciamento escolar para um Instituto Federal de Educação, Ciência e Tecnologia. O sistema deve automatizar várias tarefas e garantir a integridade dos dados por meio do uso de triggers no banco de dados. Cada tipo de trigger possui um papel específico na execução de operações, como inserções, atualizações e exclusões.

Faça a associação correta para cada tipo de trigger na coluna I com a descrição e comportamento correspondente na coluna II.

Coluna I - Tipos de Trigger:

1. Trigger BEFORE 2. Trigger AFTER 3. Trigger INSTEAD OF 4. Trigger FOR EACH STATEMENT


A. Para garantir que as notas inseridas para os alunos sejam validadas antes de serem gravadas no sistema, essa trigger executa ações antes da operação de inserção ou atualização, permitindo verificar ou ajustar os dados.

B. Após a inserção de um novo registro de aluno, é necessário atualizar automaticamente a lista de turmas e registrar o novo aluno em outras tabelas relacionadas. Essa trigger executa ações automaticamente depois que a operação principal é concluída.

C. Para enviar um relatório para a coordenação sempre que um comando SQL afeta várias linhas, como a atualização de notas para todos os alunos de uma turma, é utilizada uma trigger que realiza a ação para toda a operação em vez de para cada linha individualmente.

D. Se o objetivo é substituir a operação padrão de atualização das notas por uma nova lógica que ajusta a média final dos alunos, essa trigger permite definir uma ação alternativa que será executada no lugar da operação original.

Qual é a associação correta entre números e letras?

  • A 1-B, 2-C, 3-A, 4-D.
  • B 1-C, 2-D, 3-B, 4-A.
  • C 1-D, 2-A, 3-C, 4-B.
  • D 1-A, 2-B, 3-D, 4-C.