Accéder au contenu principal

Effectuer des mises à jour sur des données via le tMysqlOutput

Ce scénario est un Job à deux composants permettant de mettre à jour les données d'une table MySQL à partir d'un fichier délimité.

  • À partir de la Palette, glissez-déposez les composants tFileInputDelimited et tMysqlOutput (affiché comme tDBOutput_1) dans l'espace de modélisation graphiques.

  • puis connectez-les à l'aide d'un lien Row Main.

  • Double-cliquez sur le tFileInputDelimited pour afficher sa vue Basic settings pour définir ses propriétés.

  • Dans la liste Property Type, sélectionnez le mode Repository si vous avez stocké les informations du fichier délimité sous le nœud Metadata du Repository ou sélectionnez le mode Built-In pour définir manuellement les métadonnées du fichier délimité.

    Pour plus d'informations concernant le stockage des métadonnées, consultez Gestion des métadonnées dans le Studio Talend.

  • Cliquez sur le bouton [...] près du champ File name/Stream et parcourez votre système jusqu'au fichier délimité source contenant les modifications à propager dans la table MySQL.

    Dans cet exemple, utilisez le fichier customer_update, qui comporte quatre colonnes, id, CustomerName, CustomerAddress et idState. Certaines des données contenues dans ces quatre colonnes sont différentes de celles présentes dans la table MySQL.

  • Saisissez le séparateur de lignes et le séparateur de champs dans les champs correspondants.

  • Si nécessaire, configurez l’en-tête (Header), le pied de page (Footer) et le nombre limite de lignes à traiter (Limit).

    La première ligne, qui porte le nom des colonnes, est ignorée dans cet exemple, c'est pourquoi le champ Header est défini à 1. De plus, le nombre de lignes à traiter est limité à 2000.

  • Cliquez sur le bouton [...] à côté du champ Edit schema pour ouvrir une boîte de dialogue dans laquelle définir la structure du fichier délimité source à passer au composant suivant.

  • Cochez la case Key pour la ou les colonne(s) que vous voulez définir comme clé.

Note InformationsRemarque :

Vous devez obligatoirement définir au moins une clé pour que le Job s'exécute. Dans le cas contraire, le Job s'arrête automatiquement et un message d'erreur s'affiche dans la console de log.

  • Dans l'espace de modélisation graphique, double-cliquez sur le composant tDBOutput_1 pour ouvrir sa vue Basic settings et configurez ses propriétés.

  • Cliquez sur Sync columns pour récupérer le schéma du composant précédent. Si nécessaire, cliquez sur le bouton [...] près de Edit schema pour ouvrir une boîte de dialogue dans laquelle vérifier le schéma récupéré.

  • Dans le champ Property Type, sélectionnez Repository si vous avez stocké les informations de connexion à la base de données sous le nœud Metadata du Repository ou sélectionnez le mode Built-In, puis configurez manuellement les informations de connexion.

    Pour plus d'informations concernant le stockage des métadonnées, consultez Gestion des métadonnées dans le Studio Talend.

  • Renseignez les informations de connexion à la base de données dans les champs correspondants.

  • Dans le champ Table, saisissez le nom de la table à mettre à jour.

  • Dans la liste Action on table, sélectionnez l'opération que vous souhaitez effectuer sur la table. Pour ce scénario, sélectionnez Default, car la table existe déjà.

  • Dans la liste Action on data, sélectionnez l'opération que vous souhaitez effectuer sur les données, ici Update.

  • Sauvegardez votre Job et appuyez sur F6 pour l'exécuter.

À partir de votre explorateur de base de données, vous pouvez vérifier que la table customers a bien été modifiée selon le fichier délimité.

Dans l'exemple ci-dessus, la table de base de données a toujours quatre colonnes id, CustomerName, CustomerAddress et idState, mais certains champs ont été modifiés selon les données présentes dans le fichier délimité utilisé.

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 – faites-le-nous savoir.