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

Migrer de la fonction DatabaseInsert au tDBOutput avec plusieurs sorties

Mettez à jour votre Job et votre map à plusieurs sorties pour remplacer la fonction DatabaseInsert dépréciée par des composants tDBOutput.

Vous pouvez suivre les mêmes étapes pour remplacer la fonction DatabaseUpdate.

Note InformationsImportant : La migration depuis les fonctions DatabaseInsert et DatabaseUpdate avec plusieurs sorties peut s'avérer complexe. Pour éviter les complications, effectuez les étapes suivantes dans l'ordre indiqué.

Avant de commencer

  • Vous avez un Job contenant un tHMap avec plusieurs sorties utilisant des fonctions DatabaseInsert.
  • Vous avez créé une connexion à votre base de données dans le Studio Talend. Pour plus d'informations, consultez Configurer une connexion à une base de données. Assurez-vous que le schéma est identique à la structure utilisée dans votre map.

Pourquoi et quand exécuter cette tâche

Dans cet exemple, vous avez un Job simple contenant un tFileInputRaw lisant un fichier XML contenant des informations relatives à l'entreprise et un tHMap mappant les données XML vers deux tables de base de données. Le Job doit ressembler à ceci :
La map utilisée dans le tHMap ressemble à ceci :

L'objectif de cet exemple est de supprimer la fonction DatabaseInsert dépréciée et de conserver le même comportement pour le Job.

Procédure

  1. Glissez-déposez vos tables de base de données de sortie depuis Metadata (Métadonnées) > Db Connections (Connexions aux bases de données) dans votre Job, après le tHMap.
  2. Sélectionnez le tDBOutput lorsque cela vous est demandé et cliquez sur OK.
  3. Reliez les tDBOutput à votre tHMap, à l'aide de liens Row > Main et saisissez un nom pour chaque lien.
    Note InformationsImportant : Le nom du chaque lien de sortie doit être le même que celui de l'élément racine de chaque table dans la structure de sortie de votre map. Dans cet exemple, les éléments de sortie sont nommés employees et departments. Pour que la map fonctionne correctement, vous devez nommer les liens employees et departments.
  4. Cliquez sur Yes lorsqu'il vous est proposé de récupérer le schéma du composant cible.
  5. Dans la perspective Mapping, développez le dossier Representations (Représentations) sous toutes les structures des tables de base de données utilisées en sortie dans votre map.
    • S'il y a une représentation Map, vous pouvez passer à l'étape suivante.
    • S'il n'y a pas de représentation Map, cliquez-droit sur Representations (Représentations) et cliquez sur New Map (Nouvelle map).
  6. Ouvrez la map utilisée dans votre Job et cliquez sur Database (Base de données) du côté Output (Sortie), puis cliquez sur Clear (Effacer) et sur OK pour supprimer la représentation.
  7. Supprimez les fonctions DatabaseInsert de la structure de sortie.

    Elles peuvent être sur l'élément correspondant au nom de la table de base de données ou sur la boucle Row, dans l'onglet IO/Database (ES/Base de données).

  8. Cliquez sur l'élément racine de chaque table de la structure de sortie, employees et departments dans cet exemple et ajoutez une fonction WriteURL dans l'onglet IO/Database (ES/Base de données).
  9. Double-cliquez sur la fonction WriteURL, cliquez sur le bouton [...] près du champ Representation (Représentation) et sélectionnez Map, puis cliquez sur OK.
  10. Sauvegardez votre map et votre Job.

Résultats

Votre Job utilise à présent les composants tDBOutput au lieu de la fonction DatabaseInsert dépréciée. Vous pouvez exécuter le Job, vous obtiendrez le même résultat.
Note InformationsConseil : Il est possible que vous deviez fermer et rouvrir votre Job pour supprimer l'icône d'erreur sur le tHMap.

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 !