Compartilhar via


Mapear parâmetros de consulta para variáveis em uma Tarefa Executar SQL

Este tópico descreve como usar uma instrução SQL parametrizada na tarefa Executar SQL e criar mapeamentos entre variáveis e os parâmetros na instrução SQL.

Para saber mais sobre a tarefa Executar SQL, os marcadores de parâmetro e os nomes de parâmetro que você usa com diferentes tipos de conexão, consulte Tarefa Executar SQL e Parâmetros e Códigos de Retorno na Tarefa Executar SQL.

Para mapear um parâmetro de consulta para uma variável

  1. No SQL Server Data Tools (SSDT), abra o pacote do Integration Services com o qual você deseja trabalhar.

  2. No Gerenciador de Soluções, clique duas vezes no pacote para abri-lo.

  3. Clique na guia Fluxo de Controle .

  4. Se o pacote ainda não incluir uma tarefa Executar SQL, adicione uma ao fluxo de controle do pacote. Para obter mais informações, consulte Adicionar ou excluir uma tarefa ou um contêiner em um fluxo de controle
    .

  5. Clique duas vezes na tarefa Executar SQL.

  6. Forneça um comando SQL parametrizado de um dos seguintes modos:

    • Use a entrada direta e digite o comando SQL na propriedade SQLStatement.

    • Use a entrada direta, clique em Criar Consulta e, em seguida, crie um comando SQL usando as ferramentas gráficas fornecidas pelo Construtor de Consultas.

    • Use uma conexão de arquivo e depois faça referência ao arquivo que contém o comando SQL.

    • Use uma variável e depois faça referência à variável que contém o comando SQL.

    Os marcadores de parâmetros que você usa nas instruções SQL parametrizadas dependem do tipo de conexão que a tarefa Executar SQL usa.

    Tipo de conexão Marcador de parâmetro
    ADO ?
    ADO.NET e SQLMOBILE @<nome do parâmetro>
    ODBCODBC Tem alguma dúvida?
    EXCEL e OLE DB ?

    A tabela a seguir lista exemplos do comando SELECT por tipo de gerenciador de conexões. Os parâmetros fornecem os valores de filtro nas cláusulas WHERE. Os exemplos usam SELECT para retornar produtos da tabela Product no AdventureWorks2012 que têm uma ProductID maior e menor que os valores especificados por dois parâmetros.

    Tipo de conexão Sintaxe de SELECT
    EXCEL, ODBC e OLEDB SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
    ADO SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
    ADO.NET SELECT* FROM Production.Product WHERE ProductId > @parmMinProductID AND ProductID < @parmMaxProductID

    Para obter exemplos de como usar parâmetros com procedimentos armazenados, consulte Parâmetros e Códigos de Retorno na Tarefa Executar SQL.

  7. Clique em Mapeamento de Parâmetro.

  8. Para adicionar um mapeamento de parâmetro, clique em Adicionar.

  9. Forneça um nome na caixa Nome do Parâmetro .

    Os nomes de parâmetros que você usa dependem do tipo de conexão que a tarefa Executar SQL usa.

    Tipo de conexão Nome do parâmetro
    ADO Param1, Param2, ...
    ADO.NET e SQLMOBILE @<nome do parâmetro>
    ODBCODBC 1, 2, 3, ...
    EXCEL e OLE DB 0, 1, 2, 3, ...
  10. Na lista Nome da Variável , selecione uma variável. Para obter mais informações, consulte Adicionar, excluir, alterar o escopo de uma variável definida pelo usuário em um pacote.

  11. Na lista Direção , especifique se o parâmetro é uma entrada, uma saída ou um valor de retorno.

  12. Na lista Tipo de Dados , defina o tipo de dados do parâmetro.

    Importante

    O tipo de dados do parâmetro deve ser compatível com o tipo de dados da variável.

  13. Repita as etapas de 8 a 11 para cada parâmetro na instrução SQL.

    Importante

    A ordem dos mapeamentos de parâmetros deve ser igual à ordem em que os parâmetros aparecem na instrução SQL.

  14. Clique em OK.

Consulte Também

Tarefa Executar SQL
Parâmetros e códigos de retorno na tarefa Executar SQL
Variáveis do SSIS (Integration Services)