Écriture de colonnes dynamiques d'un fichier source vers une base de données - Cloud - 8.0

MySQL

Version
Cloud
8.0
Language
Français
Product
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 Real-Time Big Data Platform
Module
Studio Talend
Content
Création et développement > Systèmes tiers > Composants Database (Intégration) > Composants MySQL
Gouvernance de données > Systèmes tiers > Composants Database (Intégration) > Composants MySQL
Qualité et préparation de données > Systèmes tiers > Composants Database (Intégration) > Composants MySQL
Last publication date
2024-03-04

Ce scénario s'applique uniquement aux produits Talend nécessitant souscription.

Pour plus de technologies supportées par Talend, consultez Composants Talend.

Dans ce scénario, MySQL est utilisé à titre d'exemple. L'objectif de scénario est de lire des colonnes dynamiques à partir d'un fichier source, les mapper, puis les écrire dans une table d'une base de données MySQL. En définissant une colonne dynamique et les noms connus des colonnes, vous pouvez récupérer toutes les colonnes du fichier source, y compris les colonnes inconnues.

  • Déposez un composant tFileInputDelimited, un composant tMap et un composant tMysqlOutput dans l'espace de modélisation graphique.
  • Reliez le tFileInputDelimited au tMap à l'aide d'un lien Row > Main.
  • Reliez le tMap au tMysqlOutput à l'aide d'un lien Row > *New Output* (Main).
  • Double-cliquez sur le tFileInputDelimited afin d'ouvrir sa vue Basic settings, dans l'onglet Component.
Avertissement : La fonction de schéma dynamique n'est supportée qu'en mode Built-In.
  • Dans la liste Property Type, sélectionnez Built-In dans la liste.
  • Cliquez sur le bouton [...] à côté du champ File name/Stream et parcourez votre répertoire jusqu'au fichier d'entrée.
  • Saisissez les caractères que vous souhaitez utiliser comme séparateurs de lignes et de champs respectivement, dans les champs Row Separator et Field Separator.
  • Cliquez sur Edit Schema afin de définir le schéma du fichier source.

    La boîte de dialogue Edit Schema s'ouvre.

  • Ajoutez ou supprimez autant de lignes que nécessaire, à l'aide des boutons et .
  • Modifiez l'ordre des colonnes en utilisant les boutons et .
  • Dans la colonne Column, saisissez le nom de chaque colonne connue dans une ligne différente.
  • Dans la dernière ligne, sous Column, saisissez un nom pour la colonne dynamique.
  • Dans la colonne Type, cliquez dans chaque champ pour définir le type de données de la colonne correspondante.

    Cliquez sur la flèche afin de sélectionner le bon type de données.

Avertissement : Dans la liste Type, le type de la colonne dynamique doit être défini comme Dynamic.
Avertissement : La colonne dynamique doit être définie dans la dernière ligne du schéma.
  • Cliquez sur OK pour fermer la boîte de dialogue quand vous avez terminé de définir le schéma source.
  • Cliquez sur le tMap afin d'ouvrir sa vue Basic settings dans l'onglet Component.
  • Cliquez sur le bouton [...] à côté du champ Map Editor pour mapper les colonnes du fichier source.
  • Dans la barre d'outils en haut du panneau Output Panel, en haut à droite de la fenêtre, cliquez sur le bouton .

    La boîte de dialogue Add an Output s'affiche.

  • A côté de l'option New output, saisissez un nom pour le schéma de sortie.
  • Cliquez sur OK pour fermer la boîte de dialogue.
  • A l'aide de Ctrl+clic, sélectionnez le nom des colonnes dans le schéma d'entrée à gauche, et déposez-les dans le schéma de sortie.

    Les colonnes déposées contiennent leurs valeurs originales et sont automatiquement mappées une à une.

  • Dans le schéma de sortie, cliquez sur la ligne correspondante, dans la colonne Expression, si vous souhaitez utiliser l'Expression Builder afin de définir des paramètres avancés pour les colonnes correspondantes.
  • Cliquez sur le bouton [...] qui apparaît afin d'ouvrir l'Expression Builder et définir les paramètres, comme nécessaire.

Pour plus d'informations concernant l'utilisation de l'Expression Builder, consultez Créer du code à l'aide de l'Expression Builder.

Avertissement : Cependant, certaines limites doivent être respectées : Elle ne peut être utilisée dans une expression de filtre ou dans des variables. Elle ne peut être renommée dans la table de sortie et ne peut être utilisée comme condition de jointure.
  • Cliquez sur OK pour fermer le Map Editor.
  • Double-cliquez sur le composant tMysqlOutput afin de définir ses Basic settings, dans l'onglet Component.
  • Dans la liste Property Type, sélectionnez Built-in.
  • Dans la liste DB Version sélectionnez la version de la base de données que vous utilisez.
  • À côté du champ Host, saisissez l'adresse IP du serveur de la base de données.
  • À côté du champ Port, saisissez le numéro du port d'écoute du serveur de la base de données.
  • Dans les champs Username et Password, saisissez vos informations d'authentification de la base de données.
  • À côté du champ Action on table, sélectionnez l'action requise.
  • À côté du champ Action on data, sélectionnez l'action requise.
  • Dans la liste Schema type définissez le type en Built-in et cliquez sur Edit schema afin de modifier la schéma si nécessaire.
  • Appuyez sur F6 pour exécuter le Job.

    La table est écrite dans la base de données MySQL avec les données et les noms de colonnes précédemment inconnus :

Remarque : Le Job peut également être exécuté en mode Traces Debug, ce qui vous permet de voir les lignes telles qu'elles sont écrites dans le fichier de sortie, dans l'espace de modélisation graphique.

Pour plus d'informations concernant la définition et le mapping de schémas dynamiques, consultez Schéma dynamique.

Pour un exemple d'écriture de colonnes dynamiques dans un fichier de sortie, consultez tmysqlinput-tfileoutputdelimited_tmap-tfileoutputdelimited_tmap_writing-dynamic-columns-from-a-database-to-an-output-file_standard_component_enterprise_in-this-sc_c.html.