Tipos de triggers
Um trigger define um conjunto de ações que são executadas em resposta a uma operação de inserção, atualização ou exclusão em uma tabela especificada. Quando tal operação SQL é executada, o trigger é dito ter sido ativado. Os triggers são opcionais e são definidos usando a instrução CREATE TRIGGER.
Os triggers podem ser usados, juntamente com restrições referenciais e restrições de verificação, para impor regras de integridade de dados. Os triggers também podem ser usados para causar atualizações em outras tabelas, gerar ou transformar automaticamente valores para linhas inseridas ou atualizadas ou chamar funções para executar tarefas como emissão de alertas.
Os seguintes tipos de gatilhos são suportados:
- Acionadores BEFORE
- Executar antes de uma atualização, ou inserir. Valores que estão sendo atualizados ou inseridos podem ser modificados antes que o banco de dados seja realmente modificado. Você pode usar acionadores que executam antes de uma atualização ou inserção de várias formas:
- Para verificar ou modificar valores antes de serem realmente atualizados ou inseridos no banco de dados. Isso é útil se você deve transformar dados da maneira como o usuário vê para algum formato de banco de dados interno.
- Para executar outras operações não de banco de dados codificadas em funções definidas pelo usuário.
- ANTES DELETAR triggers
- Executar antes de um delete. Verifica valores (um levanta um erro, se necessário).
- Disparos de AFTER
- Executar após uma atualização, inserção ou exclusão. Você pode usar acionadores que são executados após uma atualização ou inserção de várias formas:
- Para atualizar dados em outras tabelas. Essa capacidade é útil para manter relações entre dados ou em manter informações da trilha de auditoria.
- Para verificar contra outros dados na tabela ou em outras tabelas. Esta capacidade é útil para garantir a integridade dos dados quando as restrições de integridade referencial não são apropriadas, ou quando restrições de verificação de tabelas limitadam a verificação apenas à tabela atual.
- Para executar operações sem banco de dados codificadas em funções definidas pelo usuário. Essa capacidade é útil ao emitir alertas ou para atualizar informações fora do banco de dados.
- Acionadores INSTEAD OF
- Descreva como realizar operações de inserção, atualização e exclusão contra visualizações que sejam complexas demais para suportar essas operações nativamente. Eles permitem que os aplicativos usem uma visualização como a interface única para todas as operações SQL (insert, delete, update e select).