Suporte do SQL Server Integration Services para OLTP na memória

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do Azure

Você pode usar uma tabela com otimização de memória, uma exibição que faça referência a tabelas com otimização de memória ou um procedimento armazenado compilado nativamente como a origem ou o destino do pacote SSIS (SQL Server Integration Services). É possível usar ADO NET Source, OLE DB Sourceou ODBC Source no fluxo de dados de um pacote SSIS e configurar o componente de origem para recuperar dados de uma tabela com otimização de memória ou uma exibição, ou especificar uma instrução SQL para executar um procedimento armazenado compilado de modo nativo. Da mesma forma, é possível usar ADO NET Destination, OLE DB Destinationou ODBC Destination para carregar dados em uma tabela com otimização de memória ou em uma exibição, ou especificar uma instrução SQL para executar um procedimento armazenado compilado de modo nativo.

É possível configurar os componentes de origem e destino mencionados acima em um pacote SSIS para ler e gravar nas tabelas com otimização de memória e em exibições da mesma forma que em outras tabelas e exibições do SQL Server. No entanto, é preciso estar ciente dos pontos importantes na seção a seguir ao usar procedimentos armazenados nativamente compilados.

Invocando um procedimento armazenado nativamente compilado de um pacote SSIS

Para invocar um procedimento armazenado compilado nativamente de um pacote SSIS, é recomendável usar uma Origem ODBC ou um Destino ODBC com uma instrução SQL no formato: <nome do procedimento> sem a palavra-chave EXEC. Se você usar a palavra-chave EXEC na instrução SQL, será exibida uma mensagem de erro, pois o gerenciador de conexões ODBC interpreta o texto do comando SQL como uma instrução Transact-SQL e não como um procedimento armazenado, além de usar cursores, que não são compatíveis com a execução de procedimentos armazenados compilados nativamente. O gerenciador de conexões trata a instrução SQL sem a palavra-chave EXEC como uma chamada de procedimento armazenado e não usará um cursor.

Você também pode usar a Origem ADO .NET e a Origem OLE DB para invocar um procedimento armazenado nativamente compilado, mas é recomendável usar a Origem ODBC. Se você configurar a Origem ADO .NET para executar um procedimento armazenado compilado nativamente, será exibida uma mensagem de erro, pois o provedor de dados do SQL Server (SqlClient), que a Origem ADO .NET usa por padrão, não é compatível com a execução de procedimentos armazenados compilados nativamente. É possível configurar a Origem ADO .NET para usar o Provedor de Dados ODBC, o Provedor OLE DB para SQL Server ou o SQL Server Native Client. No entanto, observe que a Origem ODBC é mais bem executada do que a Origem ADO .NET com o Provedor de Dados ODBC.

Confira também

Suporte ao SQL Server para OLTP na memória