Paramétrage d'une table externe (Concepteur de requêtes)
Lorsque vous créez une requête ou que vous voulez en améliorer une, préalablement créée, vous pouvez aller chercher des données sur des bases de données multiples.
L’utilisation des tables externes vous permet d’utiliser une table contenue dans une autre base de données que celle de la société sur laquelle vous travaillez.
Cette base de données peut appartenir à une autre application que celle que vous utilisez.
Pour mettre en place cette fonctionnalité il faut définir une table externe (table temporaire) constituée par une ou plusieurs table ou requête externes.
Sommaire |
Dossier Descriptif
Alias : Vous devez saisir le nom de la table externe que vous allez créer. Dès que vous avez saisi un nom et que vous sélectionnez une autre zone de la fenêtre. Le programme ajoute automatiquement au nom que vous avez saisi le préfixe EXT pour montrer que vous être en train de créer une table externe. Dans l’onglet Descriptif de la requête, dans la partie droite de la fenêtre, le nom de la table externe commencera par ce préfixe EXT.
Table, Nom : Vous pouvez saisir un nom pour la table temporaire que vous êtes en train de créer. Une fois que vous avez créé une première table temporaire vous pouvez ajouter ou supprimer des tables avec les boutons Ajouter et Retirer.
Connexion : Vous cliquez directement sur le bouton pour créer la chaîne qui vous permet de retrouver une autre base de données.
La fenêtre suivante s’affiche :
Le bouton Construire vous permet de lancer la fenêtre «Propriétés des liaisons de données» pour vous aider à construire la chaîne de connexion.
Les onglets de cette fenêtre «Propriétés des liaisons de données» varient en fonction du fournisseur que vous sélectionnez.
Dans l’onglet «Connexion», vous pouvez sélectionner ou saisir le nom du serveur, l’utilisateur identifié par un mot de passe et le nom de la base de données sur le serveur. Par exemple, vous pouvez obtenir la fenêtre suivante :
Le bouton Tester la connexion vous permet de vérifier que la connexion a effectivement réussi.
Le bouton OK valide les sélections des zones de la fenêtre.
La fenêtre «Table externe» alors affiche la chaîne de connexion créée précédemment :
Base : Vous avez le choix entre deux types de base :
- URL : vous devez alors saisir ou sélectionner dans la liste déroulante l’adresse du serveur. Vous pouvez choisir ce type de base lorsque la table externe se trouve sur un serveur SQL server ou Oracle (ou tout autre serveur gérable par une URL). La chaîne URL est constituée de la façon suivante : Driver://SERVEUR/BASE ?prefix = « PREFIX ».
Ce qui signifie :
- Driver : mssql (SQL serveur) ou orasql (Oracle), Serveur : c’est le nom du serveur,
- Base : c’est le nom de la base de données,
- Prefix : c’est le préfixe qui précède les noms des tables.
Le choix de ce type de base est possible lorsque la base de données externe se trouve sur le même serveur que les données de l’application. Dans ce cas, le Concepteur de requêtes et Designer d'étatsRequêteur n’a plus besoin de créer de table temporaire et les performances peuvent être fortement améliorées.
- ADO : correspond aux bases de type Microsoft, SQL Serveur, Oracle, ODBC…
Type : Vous pouvez sélectionner le type de données que vous voulez intégrées dans votre requête :
- Table : si vous voulez chercher les données sur une table qui se trouve dans la base de données à laquelle vous venez de vous connecter. Vous devez sélectionner la table dans la zone Table.
- SQL : si vous voulez directement dans cette fenêtre saisir une requête SQL. L’aspect de la fenêtre se modifie si vous cochez le type SQL, et vous pouvez saisir la requête dans la zone SQL. Cette fonctionnalité permet de résoudre les problèmes les plus ardus (structures de tables différentes, cumuls, jointures…). Néanmoins elle nécessite la connaissance du langage SQL.
Dossier Filtres
C’est dans cet onglet que vous créez les filtres. Les filtres de votre table externe sont construits de la même manière que les filtres de votre requête.
Dossier Colonnes
Cet onglet vous permet de définir les colonnes de la table temporaire générée :
Champs disponibles / Champs sélectionnés : Vous devez sélectionner les champs disponibles dans la table à l’aide des boutons < et >.
Alias : L’alias est le nom du champ dans une table temporaire.
Nom : Le nom est le nom du champs sélectionné.
Type / Long : Le champ peut être :
- Alphanumérique,
- Entier court,
- Entier signé,
- Entier non signé,
- Logique,
- Numérique,
- Monétaire,
- Numérique précision,
- Date,
- Heure,
- Date/Heure,
- Mémo,
- Graphique,
- Mémo formaté.
Après avoir choisi le type vous pouvez définir la longueur du champ. Vous pouvez ainsi limiter le nombre de caractères.
Validation
Le bouton OK valide les modifications et ferme la fenêtre.
La fenêtre de la requête s’est modifiée. La table que vous venez de chercher dans une autre base de données s’affiche également. Cette table s’utilise comme n’importe quelle table du diagramme.
Vous sélectionnez les champs de la nouvelle table pour les introduire dans la grille. De même pour relier toutes les tables entre elles, vous devez créer un lien à partir d’un champ.
Vous pouvez ajouter autant de tables externes que vous le souhaitez.Il suffit de lancer la fonction Utiliser une table externe du menu contextuel. Dans la fenêtre «Table externe», dans la zone Table vous devez utiliser le bouton Ajouter et donner un nouveau nom à la table que vous voulez ajouter.
Si vous créez plusieurs tables la source de données sera alors constituée par l’union de toutes les tables. Le diagramme ne montrera qu’une table externe contenant tous les champs des tables. La table externe suivante présente l’union de deux tables.
Pour optimiser le traitement de la requête, vous pouvez créer des filtres dans la table externe. Ils servent à filtrer les données récupérées. Pour créer des filtres dans la table externe, vous devez ouvrir la fenêtre «Table externe». Pour cela vous cliquez sur le bouton situé en haut de la fenêtre de la table externe.