SóProvas


ID
1740847
Banca
CESPE / CEBRASPE
Órgão
MEC
Ano
2015
Provas
Disciplina
Banco de Dados
Assuntos

Considerando que, durante a implementação do Sistema Informatizado do FIES (SisFIES), foram utilizadas várias funções em um banco de dados relacional, julgue o seguinte item.

Não se recomenda a passagem de parâmetros para uma função caso esta seja executada em um trigger, visto que a função pode alterar a forma de funcionamento do trigger.

Alternativas
Comentários
  • Sendo a função uma forma de encapsulamento de procedimentos ela supostamente não poderia alterar a forma de funcionamento de uma trigger.

  • Por partes:

    Não se recomenda a passagem de parâmetros para uma função caso esta seja executada em um trigger, -- Certo. Segundo[1], no caso do PostgreSQL, funções de triggers são funções que não recebem nenhum parâmetro e retornam o tipo trigger. Essas funções recebem uma estrutura chamada TriggerData, e esta é passada internamente para a função pelo PostgreSQL.

    visto que a função pode alterar a forma de funcionamento do trigger. -- Como assim alterar a forma de funcionamento?? A funcao vai fazer aquilo que foi programada para. Segundo[1], "cada linguagem, que suporta triggers, possui o seu próprio método para tornar os dados de entrada da trigger disponíveis para a função. Estes dados de entrada incluem o tipo de evento da trigger, assim como as opções informadas na criação da trigger. Para uma trigger no nível de linha, os dados de entrada também incluem as linhas NEW para as triggers de INSERT e UPDATE, e a linha OLD para os triggers de UPDATE e DELETE".

    Quando ele diz "alterar a forma de funcionamento", tá dizendo o q?? dropar, ao inves de deletar, por exemplo??

    Repito : a função faz aquilo q foi programada para.

    Fonte:

    [1] https://imasters.com.br/data/triggers-no-postgresql