Compartilhar via


Trabalhar com gatilhos

Um disparador é um tipo especial de procedimento armazenado que é executado quando você modifica dados em uma tabela especificada usando uma ou mais das operações de modificação de dados: ATUALIZAR, inserir ou excluir. Os disparadores especiais conhecidos como em vez de disparadores podem especificar modificações para tabelas base subjacentes de um modo de exibição.

Os disparadores podem consultar outras tabelas e podem incluir instruções complexas de SQL. Eles são úteis principalmente para impor as regras comerciais complexas ou requisitos. Por exemplo, você pode controlar se permitir que um novo pedido seja inserido baseado no status de conta atual do cliente.

Disparadores são também úteis para impor integridade referencial, que preserva os relacionamentos definidos entre tabelas quando você adicionar, atualizar ou excluir as linhas naquelas tabelas. No entanto, a melhor maneira de garantir a integridade referencial é definir a chave primária e restrições de chave externa nas tabelas relacionadas. Se você usar o criador de tabelas, você pode criar um relacionamento entre tabelas para criar automaticamente uma restrição de chave estrangeira. For details, see Relacionamentos da tabela (Visual Database Tools).

Disparadores são úteis, das seguintes maneiras:

  • Disparadores são automáticos. Eles são ativados imediatamente após qualquer modificação de dados da tabela, como, por exemplo, uma entrada manual ou uma ação de aplicativo.

  • Disparadores podem propagar alterações através de tabelas relacionadas no banco de dados. Por exemplo, você pode escrever um disparador de exclusão na title_id coluna da titles tabela para provocar uma exclusão de linhas coincidentes em outras tabelas. O disparador usa a title_id coluna como uma chave exclusiva para localizar linhas coincidentes na titleauthor, sales, e roysched tabelas.

  • Disparadores podem impor restrições mais complexas do que aquelas definidas com Verifique as restrições (Visual Database Tools). Ao contrário de restrições de verificação, os disparadores podem fazer referência a colunas em outras tabelas. Por exemplo, um disparador pode reverter atualizações que tentem aplicar um desconto (armazenado na discounts tabela) para livros (armazenados na titles tabela) com um preço inferior a US $10.

Para obter mais informações e exemplos de disparadores, consulte a documentação do seu servidor de banco de dados. Se você estiver usando o de Microsoft SQL Server, consulte "CREATE TRIGGER" no SQL Server Books Online.

Nesta seção

Como: Criar um disparador

Como: Salvar um disparador

Como: Abrir um disparador

Como: Excluir um disparador

Como: Modificar os disparadores

Usando em vez de disparadores em modos de exibição

Como: Mostrar propriedades de disparador

Referência

Referência (Visual Database Tools)