# Concevoir des requêtes de base de données

Le but principal d'une base de données est de stocker des données et de permettre d'en sortir la partie qui vous intéresse. Une base de données &kexi; vous permet de préciser plus de critères de recherche qu'une base de données sur papier. Les résultats sont plus rapides, même pour de grands jeux de données. Tout ceci vient de la puissance des bases de données. Cependant, pour pouvoir accomplir des requêtes efficaces dans votre base de données, vous devez apprendre comment expliquer à la base de données ce que vous cherchez.

Grâce aux requêtes de base de données, vous pouvez restreindre les données arrivant d'une table à un jeu prédéfini de lignes et colonnes, ainsi que joindre dynamiquement des données provenant de plusieurs tables.

Pour voir comment les requêtes fonctionnent en pratique, vous allez créer une requête `contacts` joignant les données de deux tables : `personnes` et `numero_de_telephone` (conçues dans le chapitre 3.1i et remplies de données dans le chapitre 3.2).

1. Créez une nouvelle requête vide en choisissant Insérer Requête dans la barre de menu. La fenêtre de conception va apparaitre. Cette fenêtre est divisée en deux parties : les relations de la requêtes en haut et les colonnes de la requête en bas.

2. Choisissez la table `personnes` dans la liste déroulante Table : situé en haut de la fenêtre et cliquez sur le bouton Ajouter. Une représentation graphique de la table va apparaître dans la zone des relations. Faites la même chose avec la table `numeros_de_telephone`, pour l'insérer elle aussi, comme le montre la figure ci-dessous.

3. Ajoutez les relations de la requête en glissant et déposant avec la souris : cliquez sur le champ `id` de la table `personnes` et déposez le sur le champ `personnes` de la table `numeros_de_telephone`. Cela va joindre les deux champs en créant une nouvelle relation.

4. Double-cliquez sur le champ `prenom` de la table `personnes`, pour ajouter ce champ comme colonne de la requête. De même, ajoutez les champs `nom`, `rue`, `numero`, `ville` de la table `personnes` et `telephone` de la table `numeros_de_telephone`.

5. Votre requête est maintenant prête à être testée. Cliquez sur le bouton passer en mode données de la barre d'outils, pour passer du mode conception au mode permettant de voir les données retournées par la requête.

6. Enregistrer votre requête en cliquant sur le bouton Enregistrer de la barre d'outils. Vous pouvez aussi utiliser Fichier Enregistrer dans la barre de menu ou presser les touches CtrlS. Puisque la requête n'avait pas encore été enregistrée, vous allez devoir lui donner un nom. Saisissez le nom `Contacts` dans le champ Légende et cliquez sur le bouton OK.