Share via


Programando gatilhos CLR

É possível criar um objeto de banco de dados dentro do SQL Server programada em um assembly criado no CLR (Common Language Runtime) do Microsoft.NET Framework. Os objetos do banco de dados que podem alavancar o modelo de programação avançado fornecido pelo CLR incluem gatilhos DML, disparadores DDL, procedimentos armazenados, funções, funções de agregação e tipos.

A criação de um gatilho CLR (DML ou DDL) no SQL Server engloba as seguintes etapas:

  • Defina o gatilho como uma classe em uma linguagem com suporte para .NET Framework. Para mais informações sobre como programar gatilhos CLR, consulte Gatilhos CLR. Em seguida, compile a classe para criar um assembly no .NET Framework, usando o compilador de idioma apropriado.

  • Registre o assembly no SQL Server usando a instrução CREATE ASSEMBLY. Para obter mais informações sobre assemblies no SQL Server, consulte Assemblies (Mecanismo de Banco de Dados).

  • Crie o gatilho que referencia o assembly registrado.

ObservaçãoObservação

A implantação de um projeto SQL Server no MicrosoftVisual Studio registra um assembly no banco de dados especificado para o projeto. Ao implantar o projeto, cria-se também os gatilhos CLR no banco de dados para todos os métodos anotados com o atributo SqlTrigger. Para obter mais informações, consulte Implantando objetos de banco de dados CLR.

ObservaçãoObservação

A capacidade do SQL Server para executar o código CLR, por padrão, está desativada. É possível criar, alterar e descartar objetos do banco de dados que fazem referência aos módulos de código gerenciados, mas essas referências não serão executadas no SQL Server, a menos que a Opção clr enabled esteja habilitada usando sp_configure (Transact-SQL).

Para criar, modificar ou descartar um assembly

Para criar um gatilho CLR