Trabalhando programaticamente com gerenciadores de conexões

No Integration Services, o método AcquireConnection da classe do gerenciador de conexões associado é o método chamado com maior freqüência quando você trabalha com gerenciadores de conexões em código gerenciado. Ao escrever o código gerenciado, chame o método AcquireConnection para usar a funcionalidade de um gerenciador de conexões. Chame esse método independentemente de estar escrevendo o código gerenciado em uma tarefa Script, em um componente Script, em um objeto personalizado ou em uma aplicação personalizada.

Para chamar o método AcquireConnection com êxito, você precisa saber as respostas às seguintes perguntas:

  • Quais gerenciadores de conexão retornam um objeto gerenciado do método AcquireConnection?

    Muitos gerenciadores de conexões retornam objetos COM não gerenciados (System.__ComObject) e esses objetos não podem ser usados com facilidade pelo código gerenciado. A lista desses gerenciadores de conexões inclui o OLE DB, que é usado com freqüência.

  • Para esses gerenciadores de conexões que retornam um objeto gerenciado, que objetos fazem seus métodos AcquireConnection retornarem?

    Para converter o valor de retorno no tipo apropriado, você precisa saber que tipo de objeto é retornado pelo método AcquireConnection. Por exemplo, o método AcquireConnection do gerenciador de conexões ADO.NET retorna um objeto aberto do SqlConnection quando você usa o provedor SqlClient. Porém, o método AcquireConnection do gerenciador de conexões do Arquivo só retorna uma cadeia de caracteres.

Este tópico responde a essas perguntas para os gerenciadores de conexões incluídos no Integration Services.

Gerenciadores de conexões que não retornam um objeto gerenciado

A tabela a seguir lista os gerenciadores de conexões que retornam um objeto COM nativo (System.__ComObject) do método AcquireConnection. Esses objetos não gerenciados não podem ser usados facilmente pelo código gerenciado.

Tipo de gerenciador de conexões

Nome do gerenciador de conexões

ADO

Gerenciador de conexões ADO

MSOLAP90

Analysis Services Gerenciador de conexões

EXCEL

Gerenciador de conexões do Excel

FTP

Gerenciador de conexões de FTP

HTTP

Gerenciador de conexões HTTP

ODBC

Gerenciador de conexões ODBC

OLEDB

Gerenciador de conexões OLE DB

Em geral, você pode usar um gerenciador de conexões ADO.NET de código gerenciado para se conectar a um ADO, Excel, ODBC ou fonte de dados OLE DB.

Valores de retorno do método AcquireConnection

A tabela a seguir lista os gerenciadores de conexões que retornam um objeto gerenciado do método AcquireConnection. Esses objetos gerenciados podem ser usados facilmente pelo código gerenciado.

Tipo de gerenciador de conexões

Nome do gerenciador de conexões

Tipo de valor de retorno

Informações adicionais

ADO.NET

ADO.NET Gerenciador de conexões

System.Data.SqlClient.SqlConnection

FILE

Gerenciador de conexões de arquivos

System.String

Caminho para o arquivo.

FLATFILE

Gerenciador de conexões de arquivos simples

System.String

Caminho para o arquivo.

MSMQ

Gerenciador de conexões MSMQ

System.Messaging.MessageQueue

MULTIFILE

Gerenciador de conexões de vários arquivos

System.String

Caminho para um dos arquivos.

MULTIFLATFILE

Gerenciador de conexões de vários arquivos simples

System.String

Caminho para um dos arquivos.

SMOServer

Gerenciador de conexões SMO

Microsoft.SqlServer.Management.Smo.Server

SMTP

Gerenciador de conexões SMTP

System.String

Por exemplo: SmtpServer=<server name>;UseWindowsAuthentication=True;EnableSsl=False;

WMI

Gerenciador de conexões WMI

System.Management.ManagementScope

SQLMOBILE

Gerenciador de conexões do SQL Server Compact

System.Data.SqlServerCe.SqlCeConnection

Ícone do Integration Services (pequeno) Fique atualizado com o Integration Services

Para obter os mais recentes downloads, artigos, exemplos e vídeos da Microsoft, bem como soluções selecionadas da comunidade, visite a página do Integration Services no MSDN ou TechNet:

Para receber uma notificação automática das atualizações, assine os feeds RSS disponíveis na página.