[ << ] | [ >> ] | [Sommaire] | [Table des matières] | [Index] | [ ? ] |
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 | À quoi ressemble une requête ? | |
14.2 Éditeur de requêtes | Comment écrire et gérer vos requêtes ? | |
14.3 Exporter des requêtes en texte | Exporter le résultat d'une requête en fichier texte | |
14.4 Exporter des requêtes en PDF | Exporter le résultat d'une requête en fichier PDF | |
14.5 Impression de requêtes | Imprimer le résultat d'une requête | |
14.6 Exemples de requêtes | Quelques exemples |
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] |
où 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.
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.
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.
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.
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.
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 28 Septembre 2024 par texi2html