Pular para o conteúdo principal

Questão de Banco de Dados — SQL — CESPE / CEBRASPE 2024

Banco de DadosSQL
Código
ce178253
Banca
CESPE / CEBRASPE
Órgão
MPO
Ano
2024
Nível
Superior
Cargo
Analista de Planejamento e Orçamento - Especialidade: Gestão de Dados Orçamentários
No que diz respeito a linguagens procedurais em um banco de dados SQL e a técnicas de análise de desempenho e otimização de consultas SQL, julgue o item subsecutivo.Em uma trigger, em vez da execução de uma ação para cada linha afetada, pode-se executar uma única ação para o comando SQL inteiro que causou a inserção, a exclusão ou a atualização; para tanto, utiliza-se a cláusula for each table.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

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”.

Triggers: FOR EACH ROW vs FOR EACH STATEMENT

ERRADO. A afirmação está incorreta porque a cláusula correta para execução de uma única ação por comando SQL (trigger de nível de instrução) é FOR EACH STATEMENT, e não FOR EACH TABLE.

Em SQL, existem dois tipos de triggers quanto ao escopo de execução:

  • FOR EACH ROW: a ação da trigger é executada para cada linha afetada pelo comando (inserção, atualização ou exclusão).

  • FOR EACH STATEMENT: a ação da trigger é executada uma única vez para todo o comando SQL, independentemente do número de linhas afetadas.

A cláusula FOR EACH TABLE não existe na sintaxe padrão SQL. Portanto, o item está errado.

1FOR EACH ROW
Executa para cada linha afetada
2FOR EACH STATEMENT
Executa uma vez por comando SQL
Independente do nº de linhas
3FOR EACH TABLE
Não existe na sintaxe SQL
Tipos de trigger (escopo)
LEVELsoulevel.com.br
Tipos de trigger (escopo): FOR EACH ROW (Executa para cada linha afetada); FOR EACH STATEMENT (Executa uma vez por comando SQL, Independente do nº de linhas); FOR EACH TABLE (Não existe na sintaxe SQL)

Gabarito: ERRADO

Link permanente: /questoes/ce178253