ADO Requetes
ADO Requetes
ADO Requetes
Chapitre : ADO
Module : Delphi Réseaux
1) Le composant AdoQuery:
a) Définition : L e composant AdoQuery (palette Ado) permet d’effectuer une sélection sur
une base de données en utilisant les requêtes SQL
b) Propriétés principales:
Propriété Description
Connection Nom de la base de données interrogée
SQL La requête SQL
Parameters Paramètres de la requête
Active Exécute ou non la requête
Remarque:
La propriété SQL du composant Adotable permet de conserver la requête SQL.
Elle peut être modifiée par l’inspecteur d’objet ou par code.
Par inspecteur d’objet :
Par code:
Active True
AccesBD Datasource1 Dataset Adoquery1
Dbgrid1 Datasource Datasource1
ControleBD
Dbnavigator1 Datasource Datasource1
3. Le résultat :
Remarque:
- Les deux points qui précèdent le nom de paramètre indiquent que c’est un paramètre.
Le passage des valeurs de paramètres:
Le passage des valeurs de paramètres de la requête s’effectue pendant l’exécution, après un événement
(clic sur un Bouton, changement du contenu d’un Edit, sélection d’un élément dans un Combobox,…etc).
Dans l’événement approprié, on écrit le code comme suit :
AdoQuery1.close ;
AdoQuery1.parameters.parambyname('Nom_param1').value:= valeur1
AdoQuery1.parameters.parambyname('Nom_param2').value:= valeur2 Passage des valeurs
…………………………………………………………………… :=……….. aux paramètres
AdoQuery1.parameters.parambyname('Nom_paramN').value:= valeurN
AdoQuery1.active:=true; {Exécuter la requête}
Exemple:
On veut afficher la liste des Sections selon la valeur de Mode que l’ utilisateur
sélectionne dans un Combobox , comme suit:
Donc on utilise une variable C, qui contiendra à chaque fois une valeur différente de Mode
Etapes:
1. Ecrire la requête dans la propriété SQL d’Adoquery1 comme suit:
2. Déterminer le type de paramètre (C) : Le paramètre doit avoir un type compatible au type
du champ utilisé dans la comparaison. On donne un type au paramètre par la propriété
Parameters d’AdoQuery comme suit:
3. Passage de la valeur de paramètre (C): dans la propriété Items de Combobox1 on écrit les
valeurs : Apprentissage, Résidentiel, Passerelle. Et dans l’événement Onchange de Combobox1,
on écrit :
AdoQuery1.close ; AdoQuery1.parameters.parambyname('C').value:=combobox1.text; AdoQuery1.active:=tr
Exercice02:
1. Créer une nouvelle fiche ‘Requête dynamique’ dans le projet Requetes.dpr
2. En utilisant ‘Adoquery’, Afficher les stagiaires dont date de naissance est entre date1 et
date2saisies dans Edit1 et Edit2
4- Requêtes contenant des champs calculés:
On peut introduire un champ calculé dans une requête en le mentionnant dans la partie select avec les
champs fixes. Et cela en donnant le nom du champ précédé de la formule qui le calcule.
Syntaxe:
Select champ1,champ2,.., (Formule de calcul) As Le nom_de_champ_calculé From table1
Remarque:
Le champ calculé va apparaitre dans le DbGrid seulement, i l n’ est pas stocké dans la
base de données.
Exemple01:
On veut calculer Montant de chaque produit à savoir sa quantité en stock et son prix unitaire :
Etapes :
1) Dans la propriété SQL d’Adoquery1 écrire la requête suivante :
Select Num_Prod, désignation, Qt_stock, prix_unit, (Qt_stock * prix_unit) as Montant From produits