Partilhar via


Implementar um projeto SSIS com código C# numa aplicação .NET

Aplica-se a:SQL Server SSIS Integration Runtime em Azure Data Factory

Este quickstart demonstra como escrever código C# para se ligar a um servidor de base de dados e implementar um projeto SSIS.

Para criar uma aplicação em C#, pode usar o Visual Studio, Visual Studio Code ou outra ferramenta à sua escolha.

Pré-requisitos

Antes de começares, certifica-te de que tens instalado o Visual Studio ou o Visual Studio Code. Descarregue a edição gratuita Community do Visual Studio, ou o Visual Studio Code gratuito, através do Visual Studio Downloads.

Um servidor de base de dados Azure SQL Database escuta na porta 1433. Se estiver a tentar ligar-se a um servidor Azure SQL Database a partir de um firewall corporativo, esta porta deve estar aberta no firewall corporativo para que se ligue com sucesso.

Plataformas suportadas

Pode usar a informação deste quickstart para implementar um projeto SSIS nas seguintes plataformas:

Não podes usar a informação deste quickstart para implementar um pacote SSIS no SQL Server no Linux. Para mais informações sobre como executar pacotes no Linux, veja Extrair, transformar e carregar dados no Linux com SSIS.

Para Azure SQL Database, obtenha a informação de ligação

Para implementar o projeto na Azure SQL Database, obtenha a informação de ligação necessária para se ligar à base de dados do Catálogo SSIS (SSISDB). Necessita do nome completo do servidor e das informações de login nos procedimentos que se seguem.

  1. Inicie sessão no portal Azure.
  2. Selecione Bases de Dados SQL no menu à esquerda e depois selecione a base de dados SSISDB na página de bases de dados SQL .
  3. Na página de Visão Geral da sua base de dados, consulte o nome do servidor totalmente qualificado. Para ver a opção Clique para copiar , passe o rato sobre o nome do servidor.
  4. Se esquecer as informações de login do servidor Azure SQL Database, aceda à página do servidor SQL Database para ver o nome do administrador do servidor. Podes repor a palavra-passe se for necessário.
  5. Selecionar Mostrar strings de ligação à base de dados.
  6. Reveja a cadeia de ligação completa de ADO.NET. Opcionalmente, o seu código pode usar a SqlConnectionStringBuilder para recriar esta cadeia de ligação com os valores individuais dos parâmetros que fornece.

Método de autenticação suportado

Consulte os métodos de autenticação para implementação.

Criar um novo projeto Visual Studio

  1. No Visual Studio, escolhe Ficheiro, Novo, Projeto.
  2. No diálogo Novo Projeto, expanda Visual C#.
  3. Selecione Consola App e introduza deploy_ssis_project para o nome do projeto.
  4. Selecione OK para criar e abrir o novo projeto no Visual Studio.

Adicionar referências

  1. No Explorador de Soluções, clique com o botão direito na pasta Referências e selecione Adicionar Referência. A caixa de diálogo Reference Manager é aberta.
  2. Na caixa de diálogo Gestor de Referências , expanda Assemblies e selecione Extensions.
  3. Selecione as seguintes duas referências para adicionar:
    • Microsoft.SqlServer.Management.Sdk.Sfc
    • Microsoft.SqlServer.Smo
  4. Selecione o botão Explorar para adicionar uma referência a Microsoft.SqlServer.Management.IntegrationServices. (Este conjunto é instalado apenas na cache global de montagem (GAC).) A caixa de diálogo Selecionar os ficheiros a referenciar abre-se.
  5. Na caixa de diálogo Selecionar os ficheiros a referenciar , navegue até à pasta GAC que contém a montagem. Normalmente, esta pasta é C:\Windows\assembly\GAC_MSIL\Microsoft.SqlServer.Management.IntegrationServices\14.0.0.0__89845dcd8080cc91.
  6. Selecione o assembly (ou seja, o ficheiro .dll) na pasta e selecione Adicionar.
  7. Selecione OK para fechar a caixa de diálogo do Gestor de Referências e adicione as três referências. Para garantir que as referências estão lá, verifique a lista de Referências no Explorador de Soluções.
  8. Adicione o pacote NuGet Microsoft.Data.SqlClient . Clique com o botão direito no projeto no Explorador de Soluções, selecione Gerir Pacotes NuGet, procure por Microsoft.Data.SqlClient, e instale-o.

Adicionar o código C#

  1. Abra Program.cs.

  2. Substitua o conteúdo do Program.cs pelo código a seguir. Adicione os valores apropriados para o seu servidor, base de dados, utilizador e palavra-passe.

Observação

O exemplo seguinte utiliza a Autenticação do Windows. Para usar autenticação SQL Server, substitua o Integrated Security=SSPI; argumento por User ID=<user name>;Password=<password>;. Se estiveres a ligar-te a um servidor Azure SQL Database, não podes usar autenticação Windows.

using Microsoft.SqlServer.Management.IntegrationServices;
using System;
using Microsoft.Data.SqlClient;
using System.IO;

namespace deploy_ssis_project
{
    class Program
    {
        static void Main(string[] args)
        {
            // Variables
            string targetServerName = "localhost";
            string targetFolderName = "Project1Folder";
            string projectName = "Integration Services Project1";
            string projectFilePath = @"C:\Projects\Integration Services Project1\Integration Services Project1\bin\Development\Integration Services Project1.ispac";

            // Create a connection to the server
            string sqlConnectionString = "Data Source=" + targetServerName +
                ";Initial Catalog=master;Integrated Security=SSPI;";
            SqlConnection sqlConnection = new SqlConnection(sqlConnectionString);

            // Create the Integration Services object
            IntegrationServices integrationServices = new IntegrationServices(sqlConnection);

            // Get the Integration Services catalog
            Catalog catalog = integrationServices.Catalogs["SSISDB"];

            // Create the target folder
            CatalogFolder folder = new CatalogFolder(catalog,
                targetFolderName, "Folder description");
            folder.Create();

            Console.WriteLine("Deploying " + projectName + " project.");

            byte[] projectFile = File.ReadAllBytes(projectFilePath);
            folder.DeployProject(projectName, projectFile);

            Console.WriteLine("Done.");
        }
    }
}

Executar o código

  1. Para executar a aplicação, pressione F5.
  2. No SSMS, verifique se o projeto foi implementado.