Diferença entre Triggers e Stored Procedures

Diferença entre Triggers e Stored Procedures
Diferença entre Triggers e Stored Procedures

Vídeo: Diferença entre Triggers e Stored Procedures

Vídeo: Diferença entre Triggers e Stored Procedures
Vídeo: Qual a diferença entre compilador e interpretador? #Shorts 2024, Novembro
Anonim

Triggers vs Stored Procedures

Em um banco de dados, um trigger é um procedimento (segmento de código) que é executado automaticamente quando alguns eventos específicos ocorrem em uma tabela/view. Entre seus outros usos, os gatilhos são usados principalmente para manter a integridade em um banco de dados. Um procedimento armazenado é um método que pode ser usado por aplicativos que acessam um banco de dados relacional. Normalmente, os procedimentos armazenados são usados como um método para validar dados e controlar o acesso a um banco de dados.

O que são gatilhos?

Um trigger é um procedimento (segmento de código) que é executado automaticamente quando alguns eventos específicos ocorrem em uma tabela/view de um banco de dados. Entre seus outros usos, os gatilhos são usados principalmente para manter a integridade em um banco de dados. Os gatilhos também são usados para impor regras de negócios, auditar alterações no banco de dados e replicar dados. Os acionadores mais comuns são os acionadores de linguagem de manipulação de dados (DML) que são acionados quando os dados são manipulados. Alguns sistemas de banco de dados suportam acionadores que não são de dados, que são acionados quando ocorrem eventos de linguagem de definição de dados (DDL). Alguns exemplos são gatilhos que são disparados quando as tabelas são criadas, durante as operações de confirmação ou rollback, etc. Esses gatilhos podem ser usados especialmente para auditoria. O sistema de banco de dados Oracle suporta gatilhos de nível de esquema (ou seja, gatilhos disparados quando os esquemas de banco de dados são modificados), como Após a criação, Antes de alterar, Depois de alterar, Antes de soltar, Depois de descartar, etc. Os quatro principais tipos de gatilhos suportados pelo Oracle são gatilhos de nível de linha, Acionadores de nível de coluna, acionadores de cada tipo de linha e acionadores de cada tipo de instrução.

O que são procedimentos armazenados?

Um procedimento armazenado é um método que pode ser usado por um aplicativo acessando um banco de dados relacional. Normalmente, os procedimentos armazenados são usados como um método para validar dados e controlar o acesso a um banco de dados. Se alguma operação de processamento de dados exigir a execução de várias instruções SQL, tais operações são implementadas como procedimentos armazenados. Ao invocar um procedimento armazenado, uma instrução CALL ou EXECUTE deve ser usada. Os procedimentos armazenados podem retornar resultados (por exemplo, resultados das instruções SELECT). Esses resultados podem ser usados por outros procedimentos armazenados ou por aplicativos. As linguagens que são usadas para escrever procedimentos armazenados normalmente suportam estruturas de controle como if, while, for, etc. SQL (Transact-SQL) e. NET Framework no Microsoft SQL Server). Além disso, o MySQL usa seus próprios procedimentos armazenados.

Qual é a diferença entre Triggers e Stored Procedures?

Um trigger é um procedimento (segmento de código) que é executado automaticamente quando alguns eventos específicos ocorrem em uma tabela/view de um banco de dados, enquanto um procedimento armazenado é um método que pode ser utilizado por uma aplicação acessando um banco de dados relacional. Os gatilhos são executados automaticamente quando ocorre o evento ao qual o gatilho deve responder. Mas para executar um procedimento armazenado, uma instrução CALL ou EXECUTE específica deve ser usada. Os gatilhos de depuração podem ser mais difíceis e complicados do que depurar procedimentos armazenados. Os gatilhos são muito úteis quando você quer ter certeza de que algo acontece quando um determinado evento ocorre.

Recomendado: