Propriétés du tMSSqlOutput Standard - 7.0

MSSql

EnrichVersion
7.0
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
EnrichPlatform
Studio Talend
task
Création et développement > Systèmes tiers > Composants Database > Composants MSSql
Gouvernance de données > Systèmes tiers > Composants Database > Composants MSSql
Qualité et préparation de données > Systèmes tiers > Composants Database > Composants MSSql

Ces propriétés sont utilisées pour configurer le tMSSqlOutput s'exécutant dans le framework de Jobs Standard.

Le composant tMSSqlOutput Standard appartient à la famille Databases.

Le composant de ce framework est disponible dans tous les produits Talend.

Remarque : Ce composant est une version spécifique d'un connecteur à une base de données dynamique. Les propriétés associées aux paramètres de la base de données dépendant du type de base de données sélectionné. Pour plus d'informations concernant les connecteurs aux bases de données, consultez Utiliser des composants de bases de données dynamiques.

Basic settings

Database

Sélectionnez un type de base de données dans la liste et cliquez sur Apply.

Property type

Peut-être Built-In ou Repository.

 

Built-In : propriétés utilisées ponctuellement sans stockage dans le référentiel.

 

Repository : sélectionnez le référentiel dans lequel sont stockées les propriétés. Les champs suivants sont automatiquement renseignés à l'aide des données récupérées.

Cliquez sur cette icône pour ouvrir l'assistant de connexion à la base de données et stocker les paramètres de connexion configurés dans la vue Basic settings du composant.

Pour plus d'informations concernant la configuration et le stockage des paramètres de connexion à la base de données, consultez le Guide d'utilisation du Studio Talend .

Use an existing connection

Cochez cette case et sélectionnez le composant de connexion adéquat dans la liste Component list pour réutiliser les paramètres d'une connexion que vous avez déjà définie.

Remarque : Notez que lorsqu'un Job contient un Job parent et un Job enfant, si vous devez partager une connexion existante entre ces deux niveaux, par exemple pour partager la connexion créée par le Job père au Job fils, vous devez :
  1. au niveau du Job père, enregistrer la connexion à la base de données à partager dans la vue Basic settings du composant de connexion créant cette connexion à la base de données.

  2. au niveau du Job fils, utiliser un composant de connexion dédié afin de lire cette connexion enregistrée.

Pour un exemple de partage d'une connexion à une base de données à travers différents niveaux de Jobs, consultez le Guide utilisateur du Studio Talend .

JDBC Provider

Sélectionnez le fournisseur du pilote JDBC à utiliser, Microsoft (recommandé) ou Open source JTDS.

Notez que, quand Microsoft est sélectionné, vous devez télécharger le pilote Microsoft JDBC pour les serveurs SQL sur le Centre de téléchargement de Microsoft. Vous devez ensuite décompresser le fichier zip téléchargé, choisir un fichier .jar dans le dossier décompressé, selon votre version de JRE, renommer le fichier .jar en mssql-jdbc.jar et l'installer manuellement. Pour plus d'informations relatives au choix du fichier .jar, consultez la configuration système requise sur le Centre de téléchargement de Microsoft.

Host

Adresse IP du serveur de base de données.

Port

Numéro de port d'écoute du serveur de la base.

Schema

Nom exact du schéma.

Database

Nom de la base de données.

Username et Password

Données d'authentification de l’utilisateur ou l'utilisatrice de la base de données.

Pour saisir le mot de passe, cliquez sur le bouton [...] à côté du champ Password, puis, dans la boîte de dialogue qui s'ouvre, saisissez le mot de passe entre guillemets doubles et cliquez sur OK afin de sauvegarder les paramètres.

Table

Nom de la table à écrire. Notez que seule une table peut être écrite à la fois.

Action on table

Sur la table définie, vous pouvez effectuer l'une des opérations suivantes :

Default : n'effectuer aucune opération de table.

Drop and create table : la table est supprimée et de nouveau créée.

Create table : la table n'existe pas et est créée.

Create table if not exists : la table est créée si elle n'existe pas.

Drop table if exists and create : la table est supprimée si elle existe déjà et de nouveau créée.

Clear table : le contenu de la table est supprimé.

Truncate table : le contenu de la table est supprimé. Vous ne pouvez pas annuler cette opération.

Activer les insertions Identity

Cochez cette case pour utiliser votre propre séquence sur les valeurs Identity des données insérées (plutôt que de laisser le serveur SQL choisir les valeurs séquentielles).

Action on data

Sélectionnez l'opération que vous voulez effectuer :

Insert : ajoute de nouvelles entrées à la table. Si des doublons sont trouvés, le Job s'arrête.

Single Insert Query : ajouter des entrées à la table, regroupées dans un lot.

Update : mettre à jour les entrées existantes.

Insert or update : insère un nouvel enregistrement. Si l'enregistrement avec la référence donnée existe déjà, une mise à jour est effectuée.

Update or insert : met à jour l'enregistrement avec la référence donnée. Si l'enregistrement n'existe pas, un nouvel enregistrement est inséré.

Delete : supprime les entrées correspondant au flux d'entrée.

Insert if not exist : ajouter de nouvelles entrées à la table si nécessaire.

Avertissement :

Il est nécessaire de spécifier au minimum une colonne comme clé primaire sur laquelle baser les opérations Update et Delete. Pour ce faire, cliquez sur Edit Schema et cochez les cases à côté des colonnes que vous souhaitez définir comme clés primaires. Pour une utilisation avancée, cliquez sur l'onglet Advanced settings, vue dans laquelle vous pouvez définir simultanément des clés primaires pour les opérations Update et Delete. Pour ce faire : Cochez la case Use field options et, dans la colonne Key in update, cochez les cases à côté des colonnes à utiliser comme base pour l'opération de mise à jour. Répétez l'opération dans la colonne Key in delete pour l'opération de suppression.

Remarque :

La fonction de schéma dynamique peut être utilisée dans différents modes : Insert, Update, Insert or Update, Update or insert, Delete.

Specify identity field

Cochez cette case pour spécifier quel est le champ identity (Identity field), constitué d'un numéro d'identification incrémenté automatiquement.

Lorsque cette case est cochée, trois autres champs s'affichent :

Identity field : sélectionnez dans la liste la colonne que vous souhaitez définir comme champ Identity.

Start value : saisissez une valeur de départ, utilisée pour la première ligne chargée dans la table.

Step : saisissez une valeur d'incrément, ajoutée à la valeur de la ligne précédemment chargée.

Cette case est disponible uniquement lorsque vous sélectionnez l'option Drop and create table, Create table, Create table if not exists ou Drop table if exists and create dans la liste Action on table . Elle ne s'affiche pas si vous sélectionnez l'option Enable parallel execution dans la vue Advanced settings . Si vous cochez cette case sans avoir coché la case Turn on identity insert mais en ayant sélectionné Create table if not exists dans la liste Action on table et si la table spécifiée n'existe pas, seule une table est créée sans qu'aucune donnée y soit insérée.

Remarque :

Vous pouvez également spécifier le champ identity (Identity field) à partir du schéma du composant. Pour ce faire, paramétrez le type de base de données (DB Type) de la colonne correspondante en INT IDENTITY.

Remarque :

Lorsque la case Specify identity field est cochée, le type de base de données INT IDENTITY DB Type du schéma est ignoré.

Schema et Edit schema

Un schéma est une description de lignes. Il définit le nombre de champs (colonnes) à traiter et à passer au composant suivant. Lorsque vous créez un Job Spark, évitez le mot réservé line lors du nommage des champs.

Modifiez le schéma en cliquant sur Edit Schema. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir uniquement le schéma.

  • Change to built-in property : sélectionnez cette option pour passer le schéma en mode Built-In et effectuer des modifications locales.

  • Update repository connection : sélectionnez cette option afin de modifier le schéma stocké dans le référentiel et décider de propager ou non les modifications à tous les Jobs. Si vous souhaitez propager les modifications uniquement au Job courant, cliquez sur No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre [Repository Content].

Ce composant offre la fonction de schéma dynamique. Cela vous permet de récupérer des colonnes inconnues de fichiers sources ou de copier des lots de colonnes d'une source sans avoir à mapper chaque colonne individuellement. Pour plus d'informations concernant la définition des schémas dynamiques, consultez le Guide d'utilisation du Studio Talend.

Cette fonctionnalité de schéma dynamique est conçue pour permettre de récupérer des colonnes inconnues d'une table. Il est recommandé de l'utiliser uniquement à cet effet et non pour créer des tables.

 

Built-in : le schéma est créé et conservé localement pour ce composant seulement.

 

Repository : le schéma existe déjà et est stocké dans le Repository. Ainsi, il peut être réutilisé dans des Job Designs et projets.

Lorsque le schéma à réutiliser contient des valeurs par défaut de type Integer ou Function, assurez-vous que ces valeurs par défaut ne sont pas entourées de guillemets. Si elles le sont, supprimez manuellement les guillemets.

Pour plus d'informations, consultez la description relative à la récupération des schémas de tables dans le Guide utilisateur du Studio Talend.

Specify a data source alias

Cochez cette case et spécifiez l'alias de la source de données créée dans Talend Runtime pour utiliser le pool de connexions partagées défini dans la configuration des données source. Cette option fonctionne lorsque vous déployez et exécutez votre Job dans Talend Runtime. Pour voir un exemple de cas d’utilisation, consultez Déployer un Job dans Talend Runtime pour récupérer les données d'une base de données MySQL.

Cette option est indisponible lorsque la case Use an existing connection est cochée.

Data source alias

Saisissez l'alias de la source de données créée du côté de Talend Runtime.

Ce champ est disponible uniquement lorsque la case Specify a data source alias est cochée.

Die on error

Cette case est cochée par défaut. Décochez-la pour ignorer les lignes en erreur et terminer le processus avec les lignes sans erreur. Si nécessaire, vous pouvez récupérer les lignes en erreur en utilisant un lien de type Row > Rejects.

Advanced settings

Additional JDBC Parameters

Définissez des propriétés de connexion supplémentaires pour la connexion à la base de données que vous créez. Les propriétés sont séparées par un point-virgule et chaque propriété est une paire clé-valeur. Par exemple, encrypt=true;trustServerCertificate=false; hostNameInCertificate=*.database.windows.net;loginTimeout=30; pour une connexion à la base de données Azure SQL.

Ce champ n'est pas disponible si la case Use an existing connection est cochée.

Commit every

Nombre de lignes à inclure dans le lot avant de commencer l'écriture dans la base. Cette option assure la qualité de la transaction (mais pas le rollback) et permet une meilleure performance lors de l'exécution.

Additional Columns

Cette option n'est pas disponible si vous créez (avec ou sans suppression) la table de base de données. Cette option vous permet d'appeler des fonctions SQL afin d'effectuer des actions sur des colonnes, à l'exclusion des actions d'insertion, de mise à jour, de suppression ou qui nécessitent un prétraitement particulier.

 

Name : saisissez le nom de la colonne à modifier ou à insérer.

 

SQL expression : saisissez l'instruction SQL à exécuter afin de modifier ou d'insérer les données de la colonne souhaitée.

 

Position : sélectionnez Before, Replace ou After selon l'action à effectuer sur la colonne de référence.

 

Reference column : saisissez une colonne de référence que le composant tDBOutput peut utiliser pour placer ou remplacer la nouvelle colonne ou la colonne modifiée.

Use field options

Cochez cette case pour personnaliser une requête, surtout lorsqu'il y a plusieurs actions sur les données.

Ignore date validation

Cochez cette case pour ignorer la validation de la date et insérer les données directement dans la base de données pour les types de données DATE, DATETIME, DATETIME2 et DATETIMEOFFSET.

Enable debug mode

Cochez cette case pour afficher chaque étape durant le traitement des entrées dans une base de données.

Support null in "SQL WHERE" statement

Cochez cette case pour prendre en compte les valeurs Null d'une table de base de données.

Remarque :

Assurez-vous que la case Nullable est bien cochée pour les colonnes du schéma correspondantes.

Use Batch

Cochez cette case pour activer le mode de traitement par lots pour le traitement des données.

Cette case est disponible uniquement si vous avez choisi l'option Insert, Update, Single Insert Query ou Delete dans la liste Action on data.

Remarque :

Si vous sélectionnez l'option Single Insert Query dans la liste Action on data, la taille des lots doit être inférieure ou égale à la limite des marqueurs de paramètres autorisés par le pilote JDBC (généralement 2 000), divisé par le nombre de colonnes. Pour plus d'informations, consultez la section Limitation ci-dessous.

Batch Size

Spécifiez le nombre d'enregistrements à traiter dans chaque lot.

Ce champ est disponible uniquement lorsque la case Use batch mode est cochée.

tStatCatcher Statistics

Cochez cette case afin de collecter les données de log au niveau du composant.

Enable parallel execution

Cocher cette case permet de traiter plusieurs flux de données simultanément. Cela permet de traiter les données plus rapidement. Notez que cette fonctionnalité dépend de la capacité de la base de données ou de l'application à gérer plusieurs insertions en parallèle ainsi que le nombre de processeurs utilisés. Dans le champ Number of parallel executions, vous pouvez :
  • Saisir le nombre d'exécutions parallèles désiré.
  • Appuyez sur les touches Ctrl +Espace et sélectionnez la variable de contexte appropriée dans la liste. Pour plus d'informations, consultez le Guide utilisateur du Studio Talend.

Notez que, lorsque l'exécution parallèle est activée, il n'est pas possible d'utiliser les variables globales pour récupérer les valeurs de retour dans un sous-job.

Avertissement :
  • Le champ Action on table n'est pas disponible avec la fonction de parallélisation. Ainsi, pour créer une table, vous devez utiliser un composant tCreateTable.
  • Lorsque l'exécution parallèle est activée, il n'est pas possible d'utiliser les variables globales pour retrouver les valeurs de retour dans un sous-job.

Variables globales

Global Variables

NB_LINE : nombre de lignes traitées. Cette variable est une variable After et retourne un entier.

NB_LINE_UPDATED : nombre de lignes mises à jour. Cette variable est une variable After et retourne un entier.

NB_LINE_INSERTED : nombre de lignes insérées. Cette variable est une variable After et retourne un entier.

NB_LINE_DELETED : nombre de lignes supprimées. Cette variable est une variable After et retourne un entier.

NB_LINE_REJECTED : nombre de lignes rejetées. Cette variable est une variable After et retourne un entier.

QUERY : requête traitée. Cette variable est une variable After et retourne une chaîne de caractères.

ERROR_MESSAGE : message d'erreur généré par le composant lorsqu'une erreur survient. Cette variable est une variable After et retourne une chaîne de caractères. Cette variable fonctionne uniquement si la case Die on error est décochée, lorsque le composant contient cette case.

Une variable Flow fonctionne durant l'exécution d'un composant. Une variable After fonctionne après l'exécution d'un composant.

Pour renseigner un champ ou une expression à l'aide d'une variable, appuyez sur les touches Ctrl+Espace pour accéder à la liste des variables. À partir de cette liste, vous pouvez choisir la variable que vous souhaitez utiliser.

Pour plus d'informations concernant les variables, consultez le Guide d'utilisation du Studio Talend .

Utilisation

Règle d'utilisation

Ce composant couvre toutes les possibilités de requête SQL dans les bases de données utilisant une connexion SAS.

Ce composant est généralement utilisé comme composant de sortie. It allows you to carry out actions on a table or on the data of a table in a MSSQL database. Il permet aussi de créer un flux de rejet avec un lien Row > Rejects filtrant les données en erreur. Pour un exemple d'utilisation du composant tMysqlOutput, consultez Récupérer les données erronées à l'aide d'un lien Reject.

Dynamic settings

Cliquez sur le bouton [+] pour ajouter une ligne à la table. Dans le champ Code, saisissez une variable de contexte afin de sélectionner dynamiquement votre connexion à la base de données parmi celles prévues dans votre Job. Cette fonctionnalité est utile si vous devez accéder à plusieurs tables de bases de données ayant la même structure mais se trouvant dans différentes bases de données, en particulier lorsque vous travaillez dans un environnement dans lequel vous ne pouvez pas changer les paramètres de votre Job, par exemple lorsque votre Job doit être déployé et exécuté indépendamment d'un Studio Talend.

La table Dynamic settings est disponible uniquement lorsque la case Use an existing connection est cochée dans la vue Basic settings. Lorsqu'un paramètre dynamique est configuré, la liste Component List de la vue Basic settings devient inutilisable.

Pour des exemples relatifs à l'utilisation des paramètres dynamiques, consultez Lire des données dans des bases de données à l'aide de connexions dynamiques basées sur les variables de contexte et Lire des données à partir de différentes bases de données MySQL à l'aide de paramètres de connexion chargés dynamiquement. Pour plus d'informations concernant les paramètres dynamiques et les variables de contexte, consultez le Guide utilisateur du Studio Talend.

Limitation

Lorsque l'option Single Insert Query est sélectionnée dans la liste Action on data, une Instruction Préparée SQL est générée, par exemple, INSERT INTO table (col1, col2, col3) VALUES (?,?,?) , (?,?,?) , (?,?,?) ,(?,?,?) . Entre les parenthèses se trouvent les groupes de paramètres, dont le nombre ne peut en général pas dépasser 2000, selon le pilote JBDC. La taille des lots doit être configurée de manière à respecter cette limite.

Du fait d'une incompatibilité de licence, un ou plusieurs Jar requis pour utiliser ce composant ne sont pas fournis. Vous pouvez installer les Jar manquants pour ce composant en cliquant sur le bouton Install dans l'onglet Component. Vous pouvez également trouver les Jar manquants et les ajouter dans l'onglet Modules de la perspective Integration de votre Studio. Pour plus d'informations, consultez la page Installation de modules externes.