Accéder au contenu principal Passer au contenu complémentaire

Propriétés du tPostgresqlOutput Standard

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

Le composant tPostgresqlOutput Standard appartient à la famille Bases de données.

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

Note InformationsRemarque : 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épendent du type de base de données sélectionné. Pour plus d'informations concernant les connecteurs dynamiques aux bases de données, consultez Composants de bases de données dynamiques.

Basic settings

Base de données

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.

Note InformationsRemarque : 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 parent au Job enfant, vous devez :
  1. au niveau du Job parent, 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 enfant, 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 d'utilisation du Studio Talend .

Liste des versions de la base de données.

Host

Adresse IP du serveur de base de données.

Port

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

Database

Nom de la base de données.

Schema

Nom du schéma.

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. Vous ne pouvez écrire qu'une seule table à la fois.

Action on table

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

None : aucune opération n'est effectuée.

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 : supprimer la table si elle existe déjà, puis en créer une nouvelle.

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.

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.

Update : met à jour les entrées existantes.
Note InformationsRemarque : Dans les cas où toutes les colonnes de schéma sont configurées comme clés, cette action produit une erreur et le Job échoue.
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.
Note InformationsRemarque : Dans les cas où toutes les colonnes de schéma sont configurées comme clés, cette action produit un message d'avertissement et le Job continue.
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é.
Note InformationsRemarque : Dans les cas où toutes les colonnes de schéma sont configurées comme clés, cette action produit un message d'avertissement et le Job continue.
Upsert : insère un enregistrement ou une mise à jour d'un enregistrement existant à l'aide de l'instruction PostgreSQL INSERT-ON CONFLICT. Cette option est disponible lorsque vous sélectionnez v9 and later dans la liste déroulante DB Version. Consultez PostgreSQL Upsert Using INSERT ON CONFLICT statement (en anglais) pour plus d'informations.
Note InformationsRemarque :
  • Cette action n'a aucun effet sur les colonnes spécifiées contenant des contraintes PRIMARY KEY et des contraintes UNIQUE.
  • Cette option est disponible uniquement si vous avez installé la mise à jour mensuelle R2021-12 du Studio ou une mise à jour plus récente fournie par Talend. Pour plus d'informations, contactez votre administrateur ou administratrice.

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

Note InformationsAvertissement : Il est nécessaire de spécifier au moins 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 cela, cochez la case Use field options, puis dans la colonne Key in update, sélectionnez les cases à côté des noms de colonnes sur lesquelles baser votre opération de mise à jour (Update). Répétez l'opération dans la colonne Key in delete pour l'opération de suppression.
Note InformationsRemarque : La fonction de schéma dynamique peut être utilisée dans ces modes : Insert, Update, Insert or Update, Update or insert et Delete.

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.

Créez le schéma en cliquant sur le bouton 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 Jobs 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 d'utilisation du Studio Talend.

Use spatial options

Note InformationsRemarque : Cette case est disponible lorsque vous sélectionnez l'option de création de table dans la liste Action on table.
Note InformationsRemarque : Cette case disparaît si vous cochez la case Enable parallel execution dans la vue Advanced settings.

Cochez cette case pour utiliser la base de données PostgreSQL en tant que base de données spatiale pour un système d'informations géographique (SIG). Lorsque cette case est cochée, deux autres cases s'affichent :

  • Create Spatial index : cochez cette case pour créer un index spatial.
  • Create geometry columns reference : cochez cette case pour créer la référence des colonnes de type Geometry.

Pour plus d'informations concernant la base de données PostgreSQL, consultez http://www.postgresql.org/about/ (en anglais).

Specify a data source alias

Cochez cette case et spécifiez l'alias de la source de données créée du côté de Talend Runtimepour utiliser le pool de connexions partagées défini dans la configuration des données source. Cette option fonctionne uniquement lorsque vous déployez et exécutez votre Job dans Talend Runtime .

Cette case 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é Talend Runtime.

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

Die on error

Cette case est décochée par défaut, ce qui vous permet de terminer le traitement avec les lignes sans erreur, et d'ignorer les lignes en erreur.

Advanced settings

Use alternate schema

Sélectionnez cette option pour utiliser un schéma différent de celui spécifié par le composant établissant la connexion à la base de données (le composant sélectionné dans la liste déroulante Component list de la vue Basic settings). Une fois cette option sélectionnée, fournissez le nom du schéma souhaité dans le champ Schema.

Cette option est disponible lorsque la case Use an existing connection est cochée dans l'onglet Basic settings.

Additional JDBC Parameters

Spécifiez des paramètres JDBC supplémentaires pour la connexion à la base de données créée.

Cette propriété est indisponible lorsque la case Use an existing connection de la vue Basic settings 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 situer ou remplacer la nouvelle colonne ou celle à modifier.

Use save point

Cochez cette case pour utiliser des points de sauvegarde au cours de la transaction. Cette case est indisponible si vous cochez :
  • la case Die on error dans la vue Basic settings, ou
  • la case Use Batch Size dans la vue Advanced settings.

Cette case ne fonctionne pas si vous :

  • saisissez 0 dans le champ Commit every, ou
  • cochez la case Use an existing connection dans la vue Basic settings et que le mode Auto Commit est activé dans le composant de connexion à la base de données.

Use field options

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

Debug query 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.

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

Convert columns and table to lowercase

Cocher cette case pour convertir automatiquement les lettres des noms de colonnes et du nom de la table en minuscules lorsque vous manipulez une table (par exemple lors d'une insertion, suppression ou mise à jour d'une table).

Use Batch

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

Note InformationsRemarque : Cette case est disponible uniquement lorsque vous sélectionnez Insert, Update ou Delete dans la liste Action on data.

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.

tStat Catcher Statistics

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

Enable parallel execution

Cocher cette case permet de traiter plusieurs flux de données simultanément. 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ées.
  • Appuyer sur Ctrl+Espace et sélectionner la variable de contexte dans la liste. Pour plus d'informations, consultez le Guide d'utilisation de Studio Talend.
  • 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

Variables globales

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.

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. Il permet de faire des actions sur une table ou les données d'une table d'une base de données PostgreSQL. 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 d'utilisation de paramètres dynamiques, consultez Lire des données dans des bases de données MySQL à 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 (Dynamic settings) et les variables de contexte, consultez le Guide d'utilisation du Studio Talend.

Limitation

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. Pour plus d'informations concernant l'installation de modules externes, consultez Talend Help Center (https://help.talend.com).

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !