Acerca de triggers e procedimentos armazenados, julgue o se...
Um trigger é executado automaticamente sem a interferência do usuário enquanto uma stored procedure precisa ser explicitamente invocada.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Gabarito: C - certo
No contexto de Banco de Dados, triggers (ou gatilhos) são objetos que definimos para serem automaticamente executados (disparados) em resposta a certos eventos no banco de dados, como inserções, atualizações ou exclusões de registros. Eles são cruciais para manter a integridade dos dados, realizar auditorias ou garantir a execução de regras de negócio sem intervenção direta dos usuários ou aplicativos.
Por outro lado, as stored procedures (procedimentos armazenados) são blocos de instruções SQL que são compilados e armazenados no banco de dados para serem invocados manualmente quando necessário. Quem faz a invocação é geralmente um usuário ou uma aplicação que precisa executar um conjunto definido de operações.
A resposta está correta pois reflete com precisão a diferença fundamental entre triggers e stored procedures: enquanto triggers funcionam de forma autônoma, sem necessidade de uma invocação explícita, as stored procedures dependem de uma chamada específica para serem executadas.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Stored Procedure é um bloco de código PL/SQL armazenado no servidor, que não retorna valor. As Stored Procedures são passivas, ou seja, alguma aplicação precisa solicitar sua execução. Function é um bloco PL/SQL que retorna valor. Assim como a stored procedure, uma function precisa ser solicitada por alguma aplicação.
Triggers também são procedimentos PL/SQL armazenados. A diferença é que triggers são ativas, ou seja, são acionadas automaticamente a partir de um evento que representa uma ação sobre a tabela. Esses eventos estão relacionados a comandos insert, update ou delete. Por exemplo, podemos associar uma trigger ao evento insert de uma tabela. Sempre que um registro for inserido nesta tabela, o código da trigger será executado, automaticamente. Uma trigger pode chamar uma stored procedure, que por sua vez pode chamar outra stored procedure.
https://www.devmedia.com.br/stored-procedures-e-triggers-no-oracle-artigo-sql-magazine-03/7629
Ou seja, uma trigger pode chamar uma stored procedure sem precisar do usuário. Não sei por que a questão está correta.
Stored Procedure (Procedimento Armazenado) → Precisa ser explicitamente invocado.
Trigger → É automático.
Gab.: Certo
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo