Criando procedimentos armazenados CLR

No SQL Server 2008, você pode criar um objeto de banco de dados dentro de uma instância 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, procedimentos armazenados, funções, funções de agregação e tipos.

Criar um procedimento armazenado CLR em SQL Server envolve as seguintes etapas:

  • Definir o procedimento armazenado como um método estático de uma classe em um idioma com suporte do .NET Framework. Para obter mais informações sobre como programar procedimentos armazenados CLR, consulte Procedimentos armazenados CLR. Em seguida, compilar a classe para criar um assembly no .NET Framework, usando o compilador de idioma apropriado.

  • Registrar o assembly no SQL Server usando a instrução CREATE ASSEMBLY. Para obter mais informações sobre como trabalhar com assemblies, consulte SQL Server, consulte Assemblies.

  • Criar o procedimento armazenado que referencia o assembly registrado, usando a instrução CREATE PROCEDURE.

ObservaçãoObservação

Implantar um projeto SQL Server no Microsoft Visual Studio registra um assembly no banco de dados especificado para o projeto. Implantar o projeto também cria os procedimentos armazenados CLR no banco de dados para todos os métodos anotados com o atributo SqlProcedure. Para obter mais informações, consulte Implantando objetos de banco de dados CLR.

ObservaçãoObservação

A capacidade do SQL Server de executar o código CLR, por padrão, está desativada. É possível criar, alterar e descartar objetos do banco de dados que referenciam os 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 seja habilitada, usando sp_configure (Transact-SQL).

Para criar, modificar ou descartar um assembly

Para criar um procedimento armazenado CLR