Considerando essas relações, julgue o item, no que se refere...

Próximas questões
Com base no mesmo assunto
Q2263298 Banco de Dados
A seguir, apresentam-se relações de um esquema do banco de dados relacional EMPRESA, em que as chaves primárias estão sublinhadas.

EMPREGADO (NOME, SOBRENOME, NSS, SEXO, SALARIO, NSS_SUPERVISOR, NUD)
DEPARTAMENTO (NOMED, NUD, NSS_GERENTE, TOTAL_SAL)
PROJETO (NOMEP, NUMEROP, LOCALIZAP, NUMD)
TRABALHA_EM (NSSE, NUMP, HORAS)
DEPENDENTE (NSSE, NOME_DEPENDENTE, SEXO, PARENTESCO)
Considerando essas relações, julgue o item, no que se refere a visão (view) e triggers.
Triggers são procedimentos disparados implicitamente sempre que uma tabela ou visão é modificada ou quando ocorrem algumas ações do usuário ou ações do sistema de banco de dados. O padrão SQL-92 dispõe da implementação de triggers conforme a sintaxe apresentada no trecho de código a seguir.
CREATE TRIGGER TOTALSAL1 AFTER INSERT ON EMPREGADO FOR EACH ROW WHEN (NEW.NUD IS NOT NULL) UPDATE DEPARTAMENTO SET TOTAL_SAL=TOTAL_SAL + NEW.SALARIO WHERE NUD=NEW.NUD;
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta para a questão apresentada é: E - errado.

Vamos entender o tema central da questão, que é sobre gatilhos (triggers) em bancos de dados relacionais. Gatilhos são blocos de código que são automaticamente executados (ou "disparados") em resposta a certos eventos ocorridos em uma tabela ou visão no banco de dados, como inserções, atualizações ou deleções. Eles são muito úteis para garantir a integridade dos dados e automatizar processos.

No enunciado, é mencionado um trecho de código SQL que exemplifica a criação de um gatilho:

CREATE TRIGGER TOTALSAL1
AFTER INSERT ON EMPREGADO
FOR EACH ROW
WHEN (NEW.NUD IS NOT NULL)
UPDATE DEPARTAMENTO
SET TOTAL_SAL=TOTAL_SAL + NEW.SALARIO
WHERE NUD=NEW.NUD;

No entanto, o enunciado afirma que o padrão SQL-92 dispõe da implementação de triggers, o que não é verdade. O padrão SQL-92 não suporta gatilhos; eles foram introduzidos posteriormente, no padrão SQL:1999. Esta é a razão pela qual a afirmação no enunciado está errada.

Análise da Correção:

  • A afirmação de que gatilhos estão disponíveis no SQL-92 é incorreta. Eles foram formalmente incluídos na revisão SQL:1999.
  • O código apresentado na questão é tecnicamente correto para sistemas que suportam gatilhos, mas a questão não foca no código em si, e sim na disponibilidade de triggers no padrão SQL-92.

Portanto, é importante lembrar que ao lidar com questões de concursos, precisamos prestar atenção aos detalhes sobre padrões e versões de SQL. Esta questão testa o conhecimento específico sobre a evolução dos padrões SQL e como eles impactam a funcionalidade disponível no banco de dados.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo