Expressões do SSIS (Integration Services)

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

Uma expressão é uma combinação de símbolos (identificadores, literais, funções e operadores) gera um único valor de dados. Expressões simples podem ser uma única constante, variável ou função. Na maioria das vezes, as expressões são complexas, usando diversos operadores e funções e consultando diversas colunas e variáveis. No Integration Services, as expressões podem ser usadas para definir condições para instruções CASE, criar e atualizar valores em colunas de dados, atribuir valores às variáveis, atualizar ou preencher propriedades em tempo de execução, definir restrições em restrições de precedência e fornecem as expressões usadas pelo contêiner de Loop For.

As expressões têm base em uma linguagem de expressão e no avaliador de expressão. O avaliador de expressão analisa a expressão e determina se ela segue as regras da linguagem de expressão. Para obter mais informações sobre a sintaxe de expressão e os literais e identificadores com suporte, consulte os tópicos a seguir.

Componentes que usam expressões

Os seguintes elementos no Integration Services podem usar expressões:

  • A transformação de Divisão Condicional implementa uma estrutura de decisão com base em expressões para direcionar linhas de dados a destinos diferentes. As expressões usadas em uma transformação de Divisão Condicional devem resultar em true ou false. Por exemplo, linhas que atendem a condição na expressão "Column1 > Column2" podem ser direcionadas para uma saída diferente.

  • A transformação Coluna Derivada usa valores criados usando expressões para preencher novas colunas em um fluxo de dados ou atualizar colunas existentes. Por exemplo, a expressão Column1 + "ABC" pode ser usada para atualizar um valor ou criar um novo valor com a cadeia de caracteres concatenada.

  • Variáveis usam uma expressão para definir seu valor. Por exemplo, GETDATE() define o valor da variável como a data atual.

  • As restrições de precedência podem usar expressões para especificar as condições que determinam se a tarefa ou contêiner restrito em um pacote é executado. Expressões usadas em uma restrição de precedência devem avaliar para true ou false. Por exemplo, a expressão @A > @B compara duas variáveis definidas pelo usuário para determinar se a tarefa restrita é executada.

  • O contêiner For Loop pode usar expressões para criar as instruções de inicialização, avaliação e incremento que a estrutura de loop usa. Por exemplo, a expressão @Counter = 1 inicializa o contador de loop.

As expressões também podem ser usadas para atualizar os valores das propriedades dos pacotes, de contêineres, como os loops For e Foreach, de tarefas, de gerenciadores de conexão em nível de pacote e de projeto, de provedores de log e de enumeradores do Foreach. Por exemplo, ao usar uma expressão de propriedade, a cadeia de caracteres “Localhost.AdventureWorks” pode ser atribuída à propriedade ConnectionName da tarefa Executar SQL. Para obter mais informações, consulte Usar expressões de propriedade em pacotes.

Marcadores de ícone para expressões

No SSDT (SQL Server Data Tools), um marcador de ícone especial é exibido ao lado de gerenciadores de conexões, variáveis e tarefas com expressões definidas. A propriedade HasExpressions está disponível em todos os objetos SSIS que dão suporte a expressões, com a exceção de variáveis. A propriedade permite que você identifique facilmente quais objetos têm expressões.

Construtor de Expressões

O construtor de expressões é uma ferramenta gráfica para criação de expressões. Ela está disponível nas caixas de diálogo Editor de Transformação de Divisão Condicional e Editor de Transformação de Coluna Derivada, bem como na caixa de diálogo Construtor de Expressões, uma ferramenta gráfica usada para criar expressões.

O construtor de expressões fornece pastas que contêm elementos específicos do pacote e pastas que contêm funções, conversões de tipo e operadores fornecidos pela linguagem de expressão. Os elementos específicos do pacote incluem variáveis de sistema e variáveis definidas pelo usuário. Nas caixas de diálogo Editor de Transformação de Divisão Condicional e Editor de Transformação de Coluna Derivada , você também pode exibir colunas de dados. Para construir expressões para as transformações, é possível arrastar itens das pastas para a coluna Condição ou Expressão ou pode digitar a expressão diretamente na coluna. O construtor de expressão soma elementos de sintaxe necessários automaticamente como o prefixo @ em nomes de variável.

Observação

Os nomes das variáveis definidas pelo usuário e das variáveis do sistema fazem distinção entre maiúsculas e minúsculas.

As variáveis possuem escopo e a pasta Variáveis no construtor de expressão lista apenas as variáveis que estão no escopo e disponíveis para uso. Para obter mais informações, consulte Variáveis do SSIS (Integration Services).

Usar uma expressão em um componente de fluxo de dados