BeeBase

Programmable relational database
with graphical user interface Support This Project
This page is also available in Deutsch English

Documentation

La documentation ci-dessous fait partie de la distribution de BeeBase. Elle est également disponible sous forme de PDF.


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

14. Traitement des données

Deux méthodes sont utilisables dans BeeBase pour le traitement des données : par programmation ou depuis éditeur de requêtes.

La méthode par programmation vous permet de créer des boutons dans les masques de tables qui, sur pression, appelleront des fonctions programmées. L'utilisation de cette méthode est décrite dans le chapitre concernant l'éditeur de structure (voir Éditeur de structure) et dans le chapitre à propos de la programmation dans BeeBase (voir Programmation de BeeBase).

Ce chapitre décrit l'utilisation de l'éditeur de requêtes, une fenêtre où vous pouvez entrer des requêtes et consulter le résultat dans une fenêtre défilante.


14.1 Requêtes Select-from-where

BeeBase utilise un système de requête du type select-from-where comme dans les bases de données SQL. La requête vous permet d'afficher le contenu des enregistrements d'une ou plusieurs tables. Seuls les enregistrements qui correspondent à un certain critère se retrouvent dans le résultat. La syntaxe (incomplète) d'une requête select-from-where est

 
SELECT exprliste FROM tableliste [WHERE test-expr]
[ORDER BY orderliste]

exprliste est une liste d'expressions, séparées par des virgules, à afficher (souvent les noms de champs) ou une simple étoile * qui correspond à tous les champs des tables spécifiées, tableliste est une liste de tables, séparées par des virgules, dans lesquelles les enregistrements sont examinés, test-expr est l'expression qui est testée pour chaque groupe d'enregistrements qui doit être inclus dans le résultat, et orderlist est une liste de champs, séparés par des virgules, qui déterminent l'ordre pour afficher le résultat. Notez que les clauses WHERE et ORDER BY sont optionnelles ; ce qui est indiqué par les crochets [].

Par exemple, la requête

 
SELECT * FROM table

affiche le contenu des champs de tous les enregistrements de la table spécifiée.

 
SELECT champ1 FROM table WHERE (LIKE champ2 "*Madonna*")

affiche les valeurs du champ champ1 de tous les enregistrements de table pour laquelle le contenu du champ champ2 contient le mot `Madonna'.

Pour plus d'informations à propos des requêtes select-from-where et notamment sa syntaxe complète, voir Programmation de BeeBase, pour plus d'exemples voir Exemples de requêtes.


14.2 Éditeur de requêtes

Pour saisir et exécuter des requêtes, ouvrez l'éditeur de requêtes en sélectionnant le menu `Programme - Requêtes'. L'éditeur de requêtes peut gérer plusieurs requêtes mais une seule est affichée à la fois. La fenêtre de l'éditeur de requêtes contient les éléments suivants :

L'éditeur de requêtes est une fenêtre non modale. Cela signifie que vous pouvez laisser l'éditeur de requêtes ouvert alors que vous travaillez avec le reste de l'application. Vous pouvez à tout moment fermer l'éditeur de requêtes, en cliquant sur le bouton de fermeture sur la barre de titre.


14.3 Exporter des requêtes en texte

Vous pouvez exporter le résultat d'une requête select-from-where vers un fichier texte en appuyant sur le bouton `Exporter'. Une fenêtre s'ouvrira contenant :

Après avoir pressé le bouton `Exporter', BeeBase ouvrira le fichier indiqué et écrira le résultat de la requête en incluant une ligne d'entête. Les champs sont écrits dans l'ordre des colonnes de la liste.


14.4 Exporter des requêtes en PDF

Sur Windows, Mac OS X, Linux et MorphOS vous pouvez exporter les résultats d'une requête vers un fichier PDF en pressant le bouton `PDF'.

Une fenêtre d'impression contient les options ci-dessous :

Après avoir pressé le bouton `Créer un PDF', BeeBase ouvrira le fichier indiqué et écrira le résultat de la requête avec une ligne d'entête contenant la liste des champs. Les champs apparaissent dans l'ordre des colonnes de la liste.


14.5 Impression de requêtes

Après avoir exécuté une requête, vous pouvez imprimer le résultat en cliquant sur le bouton `Imprimer' dans l'éditeur de requêtes.

Sur Windows, Mac OS X et Linux ceci ouvre la fenêtre d'impression standard.

Si vous utilisez la version GTK de BeeBase, la fenêtre contient une page personnalisée de `polices de caractères' où vous pouvez choisir une police et activer la contraction du texte pour ajuster le contenu à la largeur et l'orientation de page. Après avoir pressé le bouton `Imprimer' les résultats de la requête sont envoyés à l'imprimante sélectionnée.

Sur MorphOS le bouton `Imprimer' ouvre une fenêtre semblable d'export des requêtes en PDF (voir Exporter des requêtes en PDF).

La fenêtre contient les options suivantes :

Après avoir pressé le bouton `Ok', BeeBase générera un fichier temporaire qu'il ouvrira dans un lecteur externe (voir Visionneuse externe). Vous pouvez alors utiliser les fonctionnalités de votre lecteur pour envoyer le résultat de la requête à l'imprimante.

Sur les autres systèmes Amiga, la fenêtre d'impression contient les options ci-dessous :

Quand vous en avez terminé avec tous les paramètres, cliquez sur le bouton `Ok' pour lancer le travail d'impression.


14.6 Exemples de requêtes

Voici plusieurs exemples de requêtes pour vous donner une idée de la puissance des requêtes select-from-where.

Supposez que nous ayons deux tables `Personne' et `Chien'. `Personne' a les champs suivants : `Nom', un champ Entier `Age', et deux champs de référence `Pere' et `Mere' qui se réfèrent aux enregistrements père et mère de la table `Personne'.

La table contient les enregistrements suivants :

 
      Nom       Age      Pere  Mere
      --------------------------------
p1:   Steffen    26     p2      p3
p2:   Dieter     58     NIL     NIL
p3:   Marlies    56     NIL     NIL
p4:   Henning    57     NIL     NIL

`Chien' a un champ Texte `Nom', un champ de type liste `Couleur' et un champ de référence `Propriétaire' qui se réfère au propriétaire dans la table `Personne'. La table contient les enregistrements suivants :

 
      Nom      Couleur   Propriétaire
      -----------------------
d1:   Boy       blanc   p3
d2:   Streuner  gris    NIL

Avec ces données, on peut exécuter les requêtes select-from-where suivantes :

 
SELECT * FROM Personne

donne :

 
Name    Age  Pere Mere
--------------------------
Steffen  26 Dieter Marlies
Dieter   58
Marlies  56
Henning  57

(Pour les champs de référence le champ `Nom' de l'enregistrement référencé est affiché.)

 
SELECT Nom "Enfant", Age,
       Pere.Nom "Pere", Pere.Age "Age",
       Mere.Nom "Mere", Mere.Age "Age"
FROM Personne WHERE (AND Pere Mere)

donne :

 
Enfant   Age Pere  Age Mere  Age
----------------------------------
Steffen  26 Dieter  58 Marlies  56

 
SELECT Nom, Couleur,
       (IF Propriétaire Proprietaire.Nom "Pas de proprietaire") "Propriétaire"
FROM Chien

donne :

 
Nom    Couleur  Propriétaire
------------------------
Boy      blanc  Marlies
Streuner gris   Pas de propriétaire

 
SELECT a.Nom, a.Age, b.Nom, b.Age FROM Personne a, Personne b
WHERE (> a.Age b.Age)

donne :

 
a.Nom  a.Age  b.Nom  b.Age
---------------------------
Dieter     58 Steffen    26
Marlies    56 Steffen    26
Henning    57 Steffen    26
Dieter     58 Marlies    56
Henning    57 Marlies    56
Dieter     58 Henning    57


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

Ce document a été généré le 30 Septembre 2024 par texi2html