SQL Server CLR Integration passo a passo

Apesar dos assemblies em .net terem surgido no SQL Server 2005, frequentemente surgem dúvidas relacionadas a implementação. Abaixo segue um pequeno passo a passo de como iniciar o uso do CLR no SQL Server.
O objetivo aqui será criar uma stored procedure que ao ser executada imprima o retorno “Alô Mundo”. Para este desenvolvimento vou utilizar o Visual Studio 2008 com Visual Basic e o SQL Server 2008 R2.
No momento da codificação do objeto de banco de dados no Visual Studio vamos utilizar um objeto chamado SQLPipe. O SQLPipe é o mecanismo utilizado para enviar um objeto de comando de volta ao objeto que o chamou.
Antes de iniciar os passos a seguir garanta que você tem permissão no servidor de banco de dados. Crie um banco de dados teste para aplicar o assembly que será criado.
No menu File do Visual Studio selecione New Project, na tela de Projects Types selecione Database, no painel Templates selecione SQL Server Project.

 

Ao confirmar a criação deste projeto abrirá uma janela New Database Reference, com pedindo os parâmetros de configuração para acessar o database alvo do desenvolvimento.

No Solution Explorer vamos visualizar a estrutura padrão do template selecionado, para criar a Stored Procedure clique com o botão direito sobre o ícone do projeto (SqlServerProject1) e selecione Add em seguida Stored Procedure.

 

Ao adicionar o stp_AloMundo.vb ao projeto o mesmo criará uma classe, que será o alvo da edição. Veja o código abaixo:

Deploy do Assembly

O deploy é o processo de entregar o assembly ao destino, nesse caso o banco escolhido no inicio do projeto. Para concluir o deploy basta acessar o menu build e deploy.

Executando a Stored Procedure

Os Assenblies ficam dentro de Programmability, e os objetos pertencentes aos assemblies ficam dentro da pasta dos seus respectivos objetos. Perceba na imagem abaixo que dentro de Stored Procedures há um objeto chamado stp_AloMundo, esse é o fruto do desenvolvimento.

A execução segue como qualquer outra stored procedure do SQL Server, com a sintaxe padrão.

Para finalizar, são diversas as vantagens do uso de .Net Assemblies com o SQL Server entre os quais a mais significativa, na minha opinião, é a poder centralizar alguma regra especifica do negócio sem atribuir ao SQL Server esse processamento.

Abraço, Rodrigo.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s