Partilhar via


Implantar objetos de banco de dados CLR

Aplica-se a:SQL Server

Implantação é o processo pelo qual você distribui um aplicativo ou módulo concluído para ser instalado e executado em outro computador. Usando o Visual Studio, você pode desenvolver objetos de banco de dados CLR (Common Language Runtime) e implantá-los em um servidor de teste. Como alternativa, os objetos de banco de dados gerenciados também podem ser compilados com os arquivos de redistribuição do .NET Framework, em vez do Visual Studio. Uma vez compilados, os assemblies que contêm os objetos de banco de dados CLR podem ser implantados em um servidor de teste usando instruções Visual Studio ou Transact-SQL.

Depois que os métodos CLR são testados e verificados no servidor de teste, eles podem ser distribuídos para servidores de produção usando um script de implantação. O script de implantação pode ser gerado manualmente ou usando o SQL Server Management Studio (abordado mais adiante neste artigo).

O recurso de integração CLR está desativado por padrão no SQL Server e deve ser habilitado para usar assemblies CLR. Para obter mais informações, consulte Habilitar a integração CLR.

Implantar o assembly no servidor de teste

Usando o Visual Studio, você pode desenvolver funções, procedimentos, gatilhos, UDTs (tipos definidos pelo usuário) ou UDAs (agregações definidas pelo usuário) CLR e implantá-los em um servidor de teste. Esses objetos de banco de dados gerenciados também podem ser compilados com os compiladores de linha de comando, como csc.exe e vbc.exe, incluídos nos arquivos de redistribuição do .NET Framework. O Ambiente de Desenvolvimento Integrado do Visual Studio não é necessário para desenvolver objetos de banco de dados gerenciados para o SQL Server.

Certifique-se de que todos os erros e avisos do compilador sejam resolvidos. Os assemblies que contêm as rotinas CLR podem ser registrados em um banco de dados do SQL Server usando instruções Visual Studio ou Transact-SQL.

Observação

O protocolo de rede TCP/IP deve ser habilitado na instância do SQL Server para usar o Visual Studio para desenvolvimento, depuração e desenvolvimento remotos. Para obter mais informações sobre como habilitar o protocolo TCP/IP no servidor, consulte Configurar protocolos de cliente.

Implantar o assembly usando o visual studio

  1. Crie o projeto selecionando Build nome do projeto no menu Build.

  2. Resolva todos os erros e avisos de compilação antes de implantar o assembly no servidor de teste.

  3. Selecione Implantar no menu Compilação. O assembly é então registrado na instância do SQL Server e no banco de dados especificados quando o projeto do SQL Server foi criado pela primeira vez no Visual Studio.

Implante o assembly usando Transact-SQL

  1. Compile o assembly a partir do arquivo de origem usando os compiladores de linha de comando incluídos no .NET Framework.

  2. Para arquivos de origem C#:

    csc /target:library C:\helloworld.cs

  3. Para arquivos de origem do Visual Basic:

    vbc /target:library C:\helloworld.vb

Esses comandos iniciam o compilador C# ou Visual Basic usando a opção /target para especificar a criação de uma biblioteca DLL.

  1. Resolva todos os erros e avisos de compilação antes de implantar o assembly no servidor de teste.

  2. Abra o SQL Server Management Studio no servidor de teste. Crie uma nova consulta, conectada a um banco de dados de teste adequado (como AdventureWorks2022).

  3. Crie o assembly no servidor adicionando os seguintes Transact-SQL à consulta.

    CREATE ASSEMBLY HelloWorld from 'c:\helloworld.dll' WITH PERMISSION_SET = SAFE;

  4. O procedimento, a função, a agregação, o tipo definido pelo usuário ou o gatilho devem ser criados na instância do SQL Server. Se o assembly HelloWorld contiver um método chamado HelloWorld na classe Procedures, a Transact-SQL a seguir poderá ser adicionada à consulta para criar um procedimento chamado hello no SQL Server.

    CREATE PROCEDURE hello AS
    EXTERNAL NAME HelloWorld.Procedures.HelloWorld;
    

Para obter mais informações sobre como criar os diferentes tipos de objetos de banco de dados gerenciados no SQL Server, consulte:

Implantar o assembly em servidores de produção

Depois que os objetos de banco de dados CLR são testados e verificados no servidor de teste, eles podem ser distribuídos para servidores de produção. Para obter mais informações sobre como depurar objetos de banco de dados gerenciados, consulte Como depurar objetos de banco de dados CLR.

A implantação de objetos de banco de dados gerenciados é semelhante à de objetos de banco de dados regulares (tabelas, rotinas de Transact-SQL e assim por diante). Os assemblies que contêm os objetos de banco de dados CLR podem ser implantados em outros servidores usando um script de implantação. O script de implantação pode ser criado usando a funcionalidade Gerar Scripts do Management Studio. O script de implantação também pode ser criado manualmente ou usando Gerar Scripts e alterado manualmente. Depois que o script de implantação é criado, ele pode ser executado em outras instâncias do SQL Server para implantar os objetos de banco de dados gerenciados.

Gerar um script de implantação usando gerar scripts

  1. Abra o Management Studio e conecte-se à instância do SQL Server onde o assembly gerenciado ou o objeto de banco de dados a ser implantado está registrado.

  2. No Pesquisador de Objetos, expanda o nome do servidor <> e Bancos de Dados árvores. Clique com o botão direito do mouse no banco de dados onde o objeto de banco de dados gerenciado está registrado, selecione Tarefase, em seguida, selecione Gerar Scripts. O Assistente de Script é aberto.

  3. Selecione o banco de dados na caixa de listagem e selecione Avançar.

  4. No painel Escolher Opções de Script, selecione Seguinteou altere as opções e, em seguida, selecione Seguinte.

  5. No painel Escolher Tipos de Objeto, escolha o tipo de objeto de banco de dados a ser implantado. Selecione Avançar.

  6. Para cada tipo de objeto selecionado no painel Escolher Tipos de Objeto, é apresentado um painel Escolher tipo. Neste painel, você pode escolher entre todas as instâncias desse tipo de objeto de banco de dados registrado no banco de dados especificado. Selecione um ou mais objetos e selecione Avançar.

  7. O painel Opções de Saída aparece quando todos os tipos de objeto de banco de dados desejados são selecionados. Selecione Script para arquivar e especifique um caminho de arquivo para o script. Selecione Avançar. Reveja as suas seleções e selecione Concluir. O script de implantação é salvo no caminho de arquivo especificado.

Scripts pós-implantação

Você pode executar um script de pós-implantação.

Para adicionar um script de pós-implantação, adicione um arquivo chamado postdeployscript.sql no diretório do projeto do Visual Studio. Por exemplo, clique com botão direito do mouse em seu projeto no Gerenciador de Soluções e selecione Adicionar Item Existente. Adicione o arquivo na raiz do projeto, em vez de na pasta Test Scripts.

Quando você seleciona implantar, o Visual Studio executará esse script após a implantação do seu projeto.