← Questões de Banco de Dados

Banco de Dados · FGV · 2022

Questão comentada de Banco de Dados

No contexto da codificação de um trigger de banco de dados Oracle, assinale as variáveis que permitem acesso aos valores dos campos que estão sendo processados.

Gabarito: C

Em triggers do Oracle, quando voce quer acessar os valores da linha que esta sendo manipulada, os nomes magicos sao os correlatos de linha antiga e nova: :OLD e :NEW. Eles aparecem em triggers de nivel de linha e permitem comparar o que existia antes com o que passa a existir depois da operacao. Isso vale, por exemplo, em INSERT, UPDATE e DELETE, respeitando as limitacoes de cada comando. Pense assim: :OLD guarda o valor anterior da coluna e :NEW guarda o valor que esta sendo atribuido no momento. Em um UPDATE, os dois podem ser uteis; em um INSERT, normalmente so :NEW faz sentido; em um DELETE, voce trabalha com :OLD. O Oracle usa essa sintaxe classica com dois-pontos, e nao os termos em ingles soltos sem pontuacao. Por isso, o gabarito C esta correto: new, old. Mesmo que a grafia na alternativa nao traga os dois-pontos, ela aponta exatamente para os identificadores conceituais usados no trigger Oracle para acessar os dados antigos e novos da linha processada. Em linguagem de prova, a banca quer saber se voce reconhece essa dupla famosa do PL/SQL. Resumo de bolso: trigger de linha, dados antes e depois, :OLD e :NEW. Se a questao falar em valores dos campos em processamento, a ideia e essa mesma: consultar o passado e o presente da linha sem drama e sem misturar com outros nomes de outras tecnologias.

Continue treinando

Questões relacionadas