Utiliser le tMysqlSP pour trouver le libellé State à l'aide d'une procédure stockée - 7.1

MySQL

author
Talend Documentation Team
EnrichVersion
Cloud
7.1
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
task
Création et développement > Systèmes tiers > Composants Database > Composants MySQL
Gouvernance de données > Systèmes tiers > Composants Database > Composants MySQL
Qualité et préparation de données > Systèmes tiers > Composants Database > Composants MySQL
EnrichPlatform
Studio Talend

Le Job suivant a pour but de trouver les libellés State en fonction des ID impairs de la colonne State d'une table MySQL à deux colonnes à l'aide d'une procédure stockée.

Pour plus d'informations concernant les technologies supportées par Talend, consultez Composants Talend.

  • Cliquez et déposez les composants suivants dans l'espace de modélisation : tRowGenerator, tMysqlSP et tLogRow.

  • Connectez les composants à l'aide d'une connexion de type Row Main.

  • Le tRowGenerator est utilisé pour générer des ID impairs. Double-cliquez sur le composant pour lancer l'éditeur.

  • Cliquez sur le bouton [+] pour ajouter une colonne au schéma à générer.

  • Cochez la case Key pour définir l'entrée comme étant une clé primaire et définissez le Type en Int (entier).

  • Dans le champ Length, la longueur est de 2 chiffres au maximum.

  • Utilisez la fonction préétablie appelée sequence mais modifiez les paramètres dans la partie inférieure de la fenêtre.

  • Modifiez la valeur (Value) de step : de 1 à 2 pour cet exemple. Mais la valeur de départ (start value) reste 1.

  • Dans le champ Number of generated rows, définissez le nombre de lignes à générer à 25, afin que tous les ID impairs de State (il y a 50 États) soient générés.

  • Cliquez sur OK pour valider la configuration.

  • Puis sélectionnez le composant tMysqlSP et paramétrez ses propriétés.

  • Dans le champ Property type, sélectionnez l'option Repository puis sélectionnez l'entrée correspondante dans la liste. Les informations de connexion sont remplies automatiquement.

  • Sinon, paramétrez les informations de connexion manuellement.

  • Cliquez sur Sync Column pour récupérer le schéma généré du composant précédent.

  • Puis cliquez sur Edit Schema et ajoutez une colonne supplémentaire contenant les libellés des États (State) à obtenir en sortie, en plus de l'ID.

  • Dans le champ SP Name, saisissez le nom de la procédure comme il a été défini dans la base de données (ici, getstate). La procédure à exécuter correspond à :

    DROP PROCEDURE
    IF EXISTS `talend`.`getstate` $$
    CREATE DEFINER=`root`@`localhost` PROCEDURE `getstate`(IN pid INT, OUT
    pstate VARCHAR(50))
    BEGIN
    SELECT LabelState INTO pstate FROM us_states WHERE idState = pid;
    END $$
  • Dans la zone Parameters, cliquez sur le bouton [+] pour ajouter une ligne à la table.

  • Définissez le champ Column en ID, et le champ Type en IN, ainsi il sera considéré comme paramètre d'entrée dans la procédure.

  • Ajoutez une deuxième ligne et définissez le champ Column en State et le champ Type en Out, ainsi il sera considéré comme le paramètre de sortie à retourner.

  • Et enfin, paramétrez les propriétés du composant tLogRow.

  • Synchronisez le schéma avec celui du composant précédent.

  • Et cochez la case Print values in cells of a table pour un meilleur confort de lecture.

  • Puis enregistrez votre Job et exécutez-le.

La sortie affiche les différents États (State) avec leur ID impair comme défini dans la procédure.

Remarque :

Vérifiez Insérer des données dans des tables mère/fille si vous souhaitez analyser un ensemble d'enregistrements depuis une table de base de données ou une requête de base de données et retourner des enregistrements individuels.