Créer une requête à l'aide de SQLBuilder - 6.2

Talend Open Studio for MDM Guide utilisateur

EnrichVersion
6.2
EnrichProdName
Talend Open Studio for MDM
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

SQLBuilder vous permet de créer des requêtes SQL et de contrôler les modifications et écarts entre tables de base de données et tables de métadonnées. Cet éditeur est disponible pour DBInput et DBSQLRow.

Vous pouvez créer une requête avec SQLbuilder que votre schéma de table soit stocké dans le référentiel ou intégrées en "built-in" directement dans les propriétés du composant.

Renseignez les informations de connexion DB et sélectionnez l'entrée de référentiel appropriée si vous l'avez définie.

Supprimez la déclaration de requête présentée par défaut dans le champ Query des propriétés du composant. Puis ouvrez l'éditeur de requête SQL Builder en cliquant sur le bouton [...].

L'éditeur de requêtes SQL est composé de quatre vues :

  • Current Schema : schéma courant

  • Database structure : arborescence de la base de données

  • Query editor : éditeur de requêtes SQL

  • Query execution view : résultat des requêtes de l'éditeur

  • Schema view : vue du schéma

La structure de la base de données indique les tables pour lesquelles un schéma a été défini, soit dans une entrée du Repository, soit directement dans votre connexion built-in.

La vue Schema, en bas à droite de la fenêtre, fournit une description des colonnes.

Comparer les structures de base de données

Dans la vue Database Structure s'affichent toutes les tables stockées dans l'entrée de métadonnées DB Connection du Repository ou, dans le cas d'un schéma de type built-in, les tables de la base de données elle-même.

Note

La connexion à la base de données, dans l'usage d'un schéma en built-in ou dans le cas d'une opération de rafraîchissement du schéma de Repository, peut prendre du temps.

Cliquez sur l'icône de rafraîchissement pour afficher les différences entre les tables de métadonnées d'une DB connection et les tables de la base de données elle-même.

L'icône de la colonne Diff indique la présence de différences ou d'écarts entre les tables. Développez l'arborescence d'une table pour identifier la colonne exacte présentant des différences.

Le surlignage rouge indique que le contenu de la colonne comporte des différences ou que cette colonne n'est pas présente dans la table équivalente de la base de données elle-même.

Le surlignage bleu indique que la colonne est présente dans la base de données elle-même mais qu'elle n'est pas présente dans la table de la métadonnée.

Créer une requête

L'éditeur de requête est un système multi-onglet vous permettant de construire autant de requêtes que vous le souhaitez.

Pour créer une nouvelle requête, procédez comme suit :

  1. Cliquez-droit sur la table ou sur une colonne de la table et sélectionnez Generate Select Statement dans le menu contextuel.

  2. Cliquez sur l'onglet vide présenté par défaut et saisissez votre requête directement, ou accédez à la liste d'auto-complétion par Ctrl+Espace. L'outil d'aide à la complétion vous propose une liste de déclarations SQL courantes (Select, From, And, Groupby, etc.) ainsi que les colonnes de la table qui peuvent faire l'objet d'une requête.

    Alternativement, le Designer graphique de requête vous permet de manipuler facilement des tables et de générer en temps réel la requête correspondante dans l'onglet Edit.

  3. Cliquez sur l'onglet Designer pour passer du mode Edit manuel au mode graphique.

    Note

    Certaines déclarations SQL ne peuvent être interprétées par défaut. Décochez la case correspondant aux colonnes que vous souhaitez exclure de la sélection.

  4. Si vous avez sélectionné une table, toutes les colonnes sont sélectionnées par défaut. Décochez la case correspondant aux colonnes que vous souhaitez exclure de la sélection.

  5. Dans l'onglet Designer, ajoutez d'autres tables en sélectionnant Add tables dans le menu contextuel puis en choisissant la table à ajouter dans la liste.

    Si des jointures existent déjà entre ces tables, elles apparaissent automatiquement dans l'éditeur.

    Vous pouvez également créer facilement une jointure entre deux tables. Cliquez-droit sur les colonnes de la première table à lier et sélectionnez Equal dans le menu contextuel. Le champ en sélection est automatiquement lié au champ de la seconde table.

    La requête SQL correspondante s'affiche également dans la vue d'aperçu. Sinon, cliquez sur l'onglet Edit pour revenir au mode d'édition manuelle de requête.

    Note

    En mode Designer, vous ne pouvez pas ajouter graphiquement de critère de filtre. Pour ce faire, vous devez être en mode Edit.

  6. Lorsque votre requête est terminée, exécutez-la en cliquant sur l'icône du coureur.

    La barre d'outils au-dessus de l'éditeur de requête vous permet d'accéder rapidement aux commandes principales, notamment : exécuter, ouvrir, enregistrer et effacer.

    Les résultats de la requête active s'affichent dans la vue Results.

  7. Si nécessaire, vous pouvez cocher la case context mode pour conserver l'instruction de requête originale et la personnaliser dans la zone Query du composant. Pour plus d'exemples, si un paramètre de contexte est utilisé dans l'instruction de requête, vous ne pas pouvez l'exécuter en cliquant sur le bouton dans la barre d'outils.

  8. Cliquez sur OK. L'instruction de requête est automatiquement chargée dans la zone Query du composant.

Stocker une requête dans le Repository

Pour pouvoir récupérer et réutiliser les requêtes que vous avez créées, il est recommandé de les conserver dans le Repository.

Dans l'éditeur SQL Builder, cliquez sur Save (représenté par une disquette dans la barre d'outils) pour lier la requête à la connexion de base de données et au schéma, s'ils sont également conservés dans le Repository.

La requête peut ensuite être retrouvée à partir de la vue Database structure, dans la partie gauche de l'éditeur de requêtes.