Partilhar via


Sintaxe (SSIS)

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

A sintaxe de expressão dos Serviços de Integração é semelhante à que as linguagens C e C# utilizam. As expressões incluem elementos como identificadores (colunas e variáveis), literais, operadores e funções. Este tópico resume os requisitos únicos da sintaxe do avaliador de expressões à medida que se aplicam a diferentes elementos de expressão.

Observação

Em versões anteriores dos Serviços de Integração, existia um limite de 4000 caracteres no resultado de avaliação de uma expressão quando o resultado tinha o tipo de dados dos Serviços de Integração DT_WSTR ou DT_STR. Este limite foi removido.

Para expressões de exemplo que utilizam operadores e funções específicos, consulte o tópico sobre cada operador e função nos tópicos: Operadores (Expressão SSIS) e Funções (Expressão SSIS).

Para expressões de exemplo que utilizam múltiplos operadores e funções, bem como identificadores e literais, veja Exemplos de Expressões de Serviços Avançados de Integração.

Para obter exemplos de expressões que pode utilizar em expressões de propriedades, veja Usar Expressões de Propriedades em Pacotes.

Identifiers

As expressões podem incluir identificadores de colunas e variáveis. As colunas podem originar-se na fonte de dados ou podem ser criadas por transformações no fluxo de dados. As expressões podem usar identificadores de linhagem para se referir a colunas. Os identificadores de linhagem são números que identificam de forma única os elementos do pacote. Os identificadores de linhagem, referenciados numa expressão, devem incluir o prefixo pound (#). Por exemplo, o identificador de linhagem 138 é referenciado usando a #138.

As expressões podem incluir as variáveis do sistema que o SSIS fornece e variáveis personalizadas. As variáveis, quando referenciadas numa expressão, devem incluir o prefixo @. Por exemplo, a Counter variável é referenciada usando @Counter. O carácter @ não faz parte do nome da variável; apenas indica ao avaliador de expressões que o identificador é uma variável. Para mais informações, consulte Identificadores (SSIS).

Literais

As expressões podem incluir números numéricos, de cadeia e literais booleanos. Os literais de cadeia usados nas expressões devem estar incluídos entre aspas. Literais numéricos e booleanos não requerem aspas. A linguagem de expressão inclui sequências de fuga para caracteres que são frequentemente fugidos. Para mais informações, veja Literais (SSIS).

Operadores

O avaliador de expressões fornece um conjunto de operadores que fornece funcionalidades semelhantes ao conjunto de operadores em linguagens como Transact-SQL, C++ e C#. No entanto, a linguagem de expressão inclui operadores adicionais e utiliza símbolos diferentes daqueles com que possas estar familiarizado. Para mais informações, veja Operadores (Expressão SSIS).

Operador de Resolução de Espaço de Nomes

As expressões utilizam o operador de resolução de espaço de nomes (::) para desambiguar variáveis com o mesmo nome. Ao usar o operador de resolução de espaço de nomes, pode qualificar a variável com o seu espaço de nomes, o que torna possível usar múltiplas variáveis com o mesmo nome num pacote.

Operador de Elenco

O operador cast converte resultados de expressões, valores de coluna, valores de variáveis e constantes de um tipo de dado para outro. O operador cast fornecido pela linguagem de expressão é semelhante ao fornecido pelas linguagens C e C#. No Transact-SQL, as funções CAST e CONVERT fornecem esta funcionalidade. A sintaxe do operador cast é diferente das usadas pelo CAST e CONVERT das seguintes formas:

  • Pode usar uma expressão como argumento.

  • A sua sintaxe não inclui a palavra-chave CAST.

  • A sua sintaxe não inclui a palavra-chave AS.

Operador Condicional

O operador condicional devolve uma de duas expressões, baseadas na avaliação de uma expressão booleana. O operador condicional fornecido pela linguagem de expressão é semelhante ao fornecido pelas linguagens C e C#. Em expressões multidimensionais (MDX), a função IIF fornece funcionalidades semelhantes.

Operadores Lógicos

A linguagem de expressão suporta o ! caractere para o operador lógico NOT. Em Transact-SQL, o ! O operador está integrado no conjunto de operadores relacionais. Por exemplo, Transact-SQL fornece os > operadores e !> . A linguagem de expressão SSIS não suporta a combinação do ! operador e outros operadores. Por exemplo, não é válido combinar ! e > para !>. No entanto, a linguagem de expressão suporta uma combinação de caracteres incorporada != para a comparação de não igual a.

Operadores de igualdade

A gramática do avaliador de expressões fornece o operador de igualdade ==. Este operador é o equivalente ao operador = em Transact-SQL e ao operador == em C#.

Funções

A linguagem de expressão inclui funções de data e hora, funções matemáticas e funções de cadeia que são semelhantes às funções Transact-SQL e aos métodos C#.

Algumas funções têm os mesmos nomes que Transact-SQL funções, mas apresentam funcionalidades subtilmente diferentes no avaliador de expressões.

  • No Transact-SQL, a função ISNULL substitui valores nulos por um valor especificado, enquanto o avaliador de expressões ISNULL devolve um Booleano baseado em se uma expressão é nula.

  • No Transact-SQL, a função ROUND inclui uma opção para truncar o conjunto de resultados, enquanto a função ROUND do avaliador de expressões não o faz.

Para mais informações, veja Funções (Expressão SSIS).

Usar uma expressão num componente de fluxo de dados