Pular para o conteúdo principal

Questão de Banco de Dados — Modelo relacional — FGV 2023

Banco de DadosModelo relacional
Código
fg067749
Banca
FGV
Órgão
Receita Federal
Ano
2023
Nível
Superior
Cargo
Analista-Tributário (manhã)
Considere um banco de dados relacional em que as operações de insert e update efetuadas numa certa tabela devem ser monitoradas e anotadas, como subsídio aos procedimentos de auditoria da empresa. Essa tabela é utilizada por uma série de aplicações, em diferentes tipos de transações, e iniciadas por um número considerável de usuários.Nesse cenário, assinale o mecanismo mais adequado para a implementação desse monitoramento.
  1. ACursores.
  2. BStored procedures.
  3. CTriggers.
  4. DUtilitários de exportação de dados.
  5. EViews.
Revelar gabarito e comentário

GabaritoC — Triggers.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Mecanismos de monitoramento em banco de dados relacional

Gabarito: letra C. A ferramenta mais adequada para monitorar e registrar automaticamente operações de insert e update em uma tabela, com fins de auditoria, é a trigger (gatilho). Triggers são procedimentos armazenados que são executados automaticamente em resposta a eventos de manipulação de dados (DML), como inserções, atualizações ou exclusões, permitindo capturar informações sobre quem, quando e o que foi alterado, sem intervenção manual ou alteração nas aplicações.

A banca testa o conhecimento dos principais recursos de banco de dados e sua aplicabilidade prática. O cenário descreve a necessidade de monitorar operações em uma tabela utilizada por múltiplas aplicações e usuários, o que exige um mecanismo automático e transparente.

Mecanismo

Descrição

Automático?

Adequado para auditoria?

Cursores

Estrutura para percorrer resultados de consultas linha a linha

❌ Não

❌ Não

Stored procedures

Bloco de código SQL executado sob demanda

❌ Não

❌ Não

Triggers

Procedimento disparado automaticamente por eventos DML (INSERT, UPDATE, DELETE)

✅ Sim

✅ Sim

Utilitários de exportação

Ferramentas para extrair dados do banco

❌ Não

❌ Não

Views

Tabelas virtuais baseadas em consultas

❌ Não

❌ Não

Alternativa A — ❌ Incorreta

Cursores são estruturas utilizadas para percorrer, linha a linha, o resultado de uma consulta SQL. Embora possam ser usados para processar dados, eles não monitoram automaticamente as operações; exigem código explícito em cada transação e não são acionados de forma autônoma por eventos de inserção/atualização.

Alternativa B — ❌ Incorreta

Stored procedures são blocos de código SQL armazenados no banco de dados que podem ser executados sob demanda. Entretanto, elas não são automaticamente invocadas quando uma operação de insert ou update ocorre. Para realizar o monitoramento, seria necessário modificar todas as aplicações para chamar a stored procedure após cada operação, o que é inviável no cenário descrito (múltiplas aplicações e usuários).

Alternativa C — ✅ Correta ⟵ GABARITO

As triggers são o mecanismo ideal para auditoria, pois são associadas a uma tabela e disparadas automaticamente pelo SGBD antes ou depois de operações DML (INSERT, UPDATE, DELETE). Dessa forma, é possível registrar em uma tabela de log os dados alterados, o usuário, a data/hora e o tipo de operação, sem qualquer alteração nas aplicações clientes e de forma consistente.

PEGA ESSA DICA!

Lembre-se da relação entre trigger e auditoria: sempre que uma questão mencionar monitoramento automático de alterações em uma tabela, a resposta esperada é trigger. Stored procedures exigem chamada explícita; cursores são para navegação; views são consultas virtuais; utilitários de exportação são manuais.

Alternativa D — ❌ Incorreta

Utilitários de exportação de dados (como mysqldump, pg_dump, bcp) são ferramentas para realizar cópias de segurança ou transferir dados entre bancos. Eles não monitoram operações em tempo real e exigem execução manual ou agendada, não atendendo ao requisito de monitoramento contínuo e automático.

Alternativa E — ❌ Incorreta

Views são consultas armazenadas que apresentam dados de uma ou mais tabelas como se fossem uma tabela virtual. Elas não possuem capacidade de monitorar ou registrar alterações nos dados subjacentes; servem apenas para simplificar consultas ou controlar acesso a determinados dados.

Gabarito: letra C

Link permanente: /questoes/fg067749