Pular para o conteúdo principal

Questão de Banco de Dados — Triggers — IBFC 2025

Banco de DadosTriggers
Código
qa699023
Banca
IBFC
Órgão
TJ PE
Ano
2025
Cargo
TJ ( )
No PostgreSQL como na maioria dos Sistemas de Gerenciamento de Banco de Dados Relacionais (SGBDR) comerciais do mercado, Triggers são gatilhos que disparam a execução de códigos armazenados no servidor, a partir de eventos. Analise o código PL/pgSQL abaixo.   CREATE   OR   REPLACE   FUNCTION log_changes() RETURNS TRIGGER LANGUAGE PLPGSQL AS $$ BEGIN IF NEW.coluna1 <> OLD.coluna1 THEN INSERT INTO audits(id,coluna1,changed_on) VALUES(OLD.id,OLD.coluna1,now()); END IF; RETURN NEW; END; $$ CREATE TRIGGER last_changes BEFORE UPDATE ON Tabela FOR EACH ROW EXECUTE PROCEDURE log_changes();   Diante do exposto, assinale a alternativa correta.
  1. AOLD e NEW são criados pelo programador. A função armazena o valor antigo, o novo é o estado atual na tabela. A trigger é acionada uma única vez quando o comando UPDATE for executado
  2. BOLD e NEW são criados internamente quando a função é invocada como trigger. A função armazena o valor antigo e o novo para controle. A trigger é acionada uma única vez quando o comando UPDATE for executado
  3. COLD e NEW são criados internamente quando a função é invocada como trigger. A função armazena o valor antigo, o novo é o estado atual na tabela. A trigger é acionada para cada linha alterada na tabela
  4. DOLD e NEW são criados pelo programador. A função armazena o valor antigo, o novo é o estado atual na tabela. A trigger é acionada para cada linha alterada na tabela
Revelar gabarito e comentário

GabaritoC — OLD e NEW são criados internamente quando a função é invocada como trigger. A função armazena o valor antigo, o novo é o estado atual na tabela. A trigger é acionada para cada linha alterada na tabela

Link permanente: /questoes/qa699023