Expressions Integration Services (SSIS)Integration Services (SSIS) Expressions

Une expression est une combinaison de symboles (identificateurs, littéraux, fonctions et opérateurs) qui génère une seule valeur de données.An expression is a combination of symbols—identifiers, literals, functions, and operators—that yields a single data value. Les expressions simples peuvent être une constante unique, une variable ou une fonction.Simple expressions can be a single constant, variable, or function. Généralement, les expressions sont complexes, car elles utilisent plusieurs opérateurs et fonctions, et référencent plusieurs colonnes et variables.More frequently, expressions are complex, using multiple operators and functions and referencing multiple columns and variables. Dans Integration ServicesIntegration Services, vous pouvez utiliser des expressions pour définir des conditions dans les instructions CASE, créer et mettre à jour des valeurs dans des colonnes de données, mettre à jour ou remplir des propriétés au moment de l’exécution, définir des contraintes dans des contraintes de précédence et fournir les expressions utilisées par le conteneur de boucles For.In Integration ServicesIntegration Services, expressions can be used to define conditions for CASE statements, create and update values in data columns, assign values to variables, update or populate properties at run time, define constraints in precedence constraints, and provide the expressions used by the For Loop container.

Les expressions sont basées sur un langage d'expressions et sur l'évaluateur d'expressions.Expressions are based on an expression language, and the expression evaluator. L'évaluateur d'expression analyse l'expression et détermine si elle respecte les règles du langage d'expressions.The expression evaluator parses the expression and determines whether the expression follows the rules of the expression language. Pour plus d'informations sur la syntaxe d'expression, les littéraux et les identificateurs pris en charge, consultez les rubriques suivantes.For more information about the expression syntax and supported literals and identifiers, see the following topics.

Composants qui utilisent des expressionsComponents that Use Expressions

Les éléments suivants dans Integration ServicesIntegration Services peuvent utiliser des expressions :The following elements in Integration ServicesIntegration Services can use expressions:

  • La transformation de fractionnement conditionnel met en œuvre une structure de décision, basée sur des expressions, pour diriger des lignes de données vers différentes destinations.The Conditional Split transformation implements a decision structure based on expressions to direct data rows to different destinations. Les expressions utilisées dans une transformation de fractionnement conditionnel doivent retourner la valeur true ou false.Expressions used in a Conditional Split transformation must evaluate to true or false. Par exemple, les lignes qui répondent à la condition dans l'expression « Colonne1 > Colonne2 » peuvent être routées vers une sortie distincte.For example, rows that meet the condition in the expression "Column1 > Column2" can be routed to a separate output.

  • La transformation de colonne dérivée utilise des valeurs créées au moyen d'expressions, soit pour remplir de nouvelles colonnes dans un flux de données, soit pour mettre à jour des colonnes existantes.The Derived Column transformation uses values created by using expressions either to populate new columns in a data flow, or to update existing columns. Par exemple, l'expression Colonne1 + "ABC" peut être utilisée pour mettre à jour une valeur ou pour créer une nouvelle valeur avec la chaîne concaténée.For example, the expression Column1 + " ABC" can be used to update a value or to create a new value with the concatenated string.

  • Les variables utilisent une expression pour définir leur valeur.Variables use an expression to set their value. Par exemple, GETDATE() définit la valeur de la variable comme étant la date actuelle.For example, GETDATE() sets the value of the variable to the current date.

  • Les contraintes de précédence peuvent utiliser des expressions pour spécifier les conditions déterminant si le conteneur ou le package contraint est exécuté.Precedence constraints can use expressions to specify the conditions that determine whether the constrained task or container in a package runs. Les expressions utilisées dans une contrainte de priorité doivent retourner la valeur true ou false.Expressions used in a precedence constraint must evaluate to true or false. Par exemple, l’expression @A > @B compare deux variables définies par l’utilisateur pour déterminer si la tâche contrainte est exécutée.For example, the expression @A > @B compares two user-defined variables to determine whether the constrained task runs.

  • Le conteneur de boucles For peut utiliser des expressions pour créer les instructions d'initialisation, d'évaluation et d'incrémentation utilisées par la structure de bouclage.The For Loop container can use expressions to build the initialization, evaluation, and the incrementing statements that the looping structure uses. Par exemple, l’expression @Counter = 1 initialise le compteur de boucles.For example, the expression @Counter = 1 initializes the loop counter.

    Les expressions peuvent également être utilisées pour mettre à jour les valeurs des propriétés des packages, les conteneurs tels que les conteneurs de boucles For et Foreach, les tâches, les gestionnaires de connexions aux niveaux des packages et du projet, les modules fournisseurs d'informations et les énumérateurs Foreach.Expressions can also be used to update the values of properties of packages, containers such as the For Loop and Foreach Loop, tasks, package and project level connection managers, log providers, and Foreach enumerators. Par exemple, en utilisant une expression de propriété, la chaîne « Localhost.AdventureWorks » peut être affectée à la propriété ConnectionName de la tâche Exécuter SQL.For example, using a property expression, the string "Localhost.AdventureWorks" can be assigned to the ConnectionName property of the Execute SQL task. Pour plus d’informations, consultez Expressions de propriété dans des packages.For more information, see Use Property Expressions in Packages.

Marqueurs d'icône pour les expressionsIcon Markers for Expressions

Dans Outils de données SQL Server (SSDT)SQL Server Data Tools (SSDT), un marqueur d'icône spécial s'affiche en regard des gestionnaires de connexions, des variables et des tâches contenant des expressions.In Outils de données SQL Server (SSDT)SQL Server Data Tools (SSDT), a special icon marker displays next to connection managers, variables, and tasks that have expressions set on them. La propriété HasExpressions est disponible sur tous les objets SSIS qui prennent en charge les expressions, à l’exception des variables.The HasExpressions property is available on all SSIS objects that support expresions, with the exception of variables. La propriété vous permet d'identifier facilement les objets qui ont des expressions.The property enables you to easily identy which objects have expressions.

Générateur d'expressionsExpression Builder

Le générateur d'expressions est un outil graphique de génération d'expressions.The expression builder is a graphical tool for building expressions. Disponible dans les boîtes de dialogue Éditeur de transformation de fractionnement conditionnel, Éditeur de transformation de colonne dérivée et Générateur d’expression , il s’agit d’un outil graphique qui permet de créer des expressions.It is available in the Conditional Split Transformation Editor, Derived Column Transformation Editor dialog boxes, and in the Expression Builder dialog box, is a graphical tool for building expressions.

Le générateur d'expression fournit des dossiers contenant des éléments spécifiques aux packages, et des dossiers contenant les fonctions, les conversions de type et les opérateurs fournis par le langage d'expressions.The expression builder provides folders that contain package-specific elements, and folders that contain the functions, type casts, and operators that the expression language provides. Les éléments spécifiques aux packages comprennent les variables système et les variables définies par l'utilisateur.The package-specific elements include system variables and user-defined variables. Dans les boîtes de dialogue Éditeur de transformation de fractionnement conditionnel et Éditeur de transformation de colonne dérivée , vous pouvez également afficher des colonnes de données.In the Conditional Split Transformation Editor and Derived Column Transformation Editor dialog boxes, you can also view data columns. Pour générer des expressions pour les transformations, vous pouvez faire glisser des éléments des dossiers vers la colonne Condition ou Expression , ou vous pouvez taper l’expression directement dans la colonne.To build expressions for the transformations, you can drag items from the folders to the Condition or Expression column or you can type the expression directly in the column. Le générateur d'expressions ajoute automatiquement les éléments syntaxiques requis, tels que le préfixe « @ » des noms des variables.The expression builder automatically adds needed syntax elements such as the @ prefix on variable names.

Note

Les noms des variables définies par l'utilisateur et des variables système respectent la casse.The names of user-defined and system variables are case-sensitive.

Les variables ont une étendue et le dossier Variables dans le générateur d’expressions répertorie uniquement les variables qui sont dans l’étendue et utilisables.Variables have scope, and the Variables folder in the expression builder lists only variables that are in scope and available to use. Pour plus d’informations, consultez Variables Integration Services (SSIS).For more information, see Integration Services (SSIS) Variables.

Utiliser une expression dans un composant de flux de donnéesUse an Expression in a Data Flow Component

Article technique, SSIS Expression Examples, sur social.technet.microsoft.comTechnical article, SSIS Expression Examples, on social.technet.microsoft.com

Voir aussiSee Also

SQL Server Integration ServicesSQL Server Integration Services