Vous êtes sur la page 1sur 3

CFPA Kaous

Spécialité : Informatique/ Option : Bases de données P


Matière : Delphi Réseau

Cours : présentation de l’ADO (les composants d’accès)


1- Présentation :
L’ADO (Activex Data Objects) système d’accès aux données dans des BDD Microsoft
comme Access, SQL Server, oracle…….
2- Les composants d’accès ADO :
Composant Description
ADOConnection Permet la connexion à la base de données via le moteur ADO
Propriétés :
ConnectionString : une chaîne contenant tous les paramètres nécessaires à
l'ouverture de la connexion
loginPrompt = false pour eviter que le serveur vous pose la question du mot de
passe de la BDD
connected = true
ADOTable Accès physique à une table de la BDD
Propriétés :
Connection : définit la connexion utilisée (nom de ADOConnection)
ConnectionString : chaine définissant la connexion à ouvrir
TableName : définit le nom de la table ciblée
Active : ouvre la table (similaire à la méthode Open)
ADOQuery Permet l’envoi de requête SQL(Select) via l’ADO
Propriétés :
Connection, ConnectionString, Active
SQL : contient le texte de la requête SQL à exécutée
Les composants d’accès ADO se trouvant dans l’onglet : dbGo

3- Les composants de contrôle de données :


L’onglet contrôleBD de la palette des composants offre un ensemble de contrôles
(composants) orientés données qui représentent les données des champs d’une table de BDD,
et qui permettent aux utilisateurs de modifier ces données et de récupérer ces modifications
dans la BDD.
Composant Description
permet d’afficher et manipuler les données d’une table dans une grille (tableau).
DBGrid Propriétés :
DataSource : donner le nom du DATASOURCE qui relie la table à affichée
permet d’afficher et de modifier un seul champ de la table
DBEdit propriétés :
DataSource : donner le nom du DATASOURCE qui relie la table à affichée
DataField : permet de faire le choix du nom du champ de la table de données
Permet de naviguer dans la table de données (se déplacer d’un enregistrement à
l’autre en utilisant les boutons)
DBNavigator Propriétés :
DataSource : donner le nom du DAT ASOURCE qui relie la table à affichée
VisibleButtons : permet de rendre v isible ou invisible les boutons du DbNavigator

1
CFPA Kaous
Spécialité : Informatique/ Option : Bases de données P
Matière : Delphi Réseau

4- Connecter à une BDD Oracle (ex : la base ORCL) :

- Insérer les composants ADOTable, DBGrid, Datasource, DBNavigator

- Pour le composant ADOTable : modifier les propriétés suivantes :

•ConnectionString : cliquer sur les 3 points :


- L’assistant de connexion apparait, cliquer sur Construire
- Sélectionner le pilote d’Oracle (Microsoft OLE DB Provider for Oracle)
- Suivant, entrer le nom du serveur (le nom de la BD : ORCL), le nom
d’utilisateur (system)et le mot de passe (Info1234)
- Puis tester la connexion via le bouton Tester la connexion
• TableName : sélectionner le nom de la table désignée
• Active : mettre à true
- Pour le composant Datasource : mettre la propriété DataSet à ADOTable1
- Pour les composants DBGrid et DBNavigator : mettre la propriété Datasource à
Datasource1

Exemple :
- Créer la table suivante dans l’Oracle:
Produit (N°prod, designation , prix_unitaire, type_produit)
- Afficher le contenu de cette table dans un DBGrid

5- Créer une requête avec ADOQuery :

Les étapes pour créer une requête de sélection avec ADOQuery sont les mêmes qu’avec
le composant Query du moteur BDE

- Insérer les composants ADOQuery, DBGrid, Datasource, DBNavigator

- Pour le composant ADOQuery : modifier les propriétés suivantes :

• ConnectionString : la chaine définissant la connexion à ouvrir


• SQL : définie la requête de sélection à exécuter sur la BDD
• Active : mettre à true
- Pour le composant Datasource : mettre la propriété DataSet à ADOQuery1
- Pour les composants DBGrid et DBNavigator : mettre la propriété Datasource à
Datasource1

Exemple :

Prenant la table Produit de l’exemple précèdent :

Utiliser le composant ADOQuery pour afficher le contenu de cette table

2
CFPA Kaous
Spécialité : Informatique/ Option : Bases de données P
Matière : Delphi Réseau

- Définir la valeur de la propriété ConnectionSring, puis écrit la requête suivante dans la


propriété SQL : select* from Produit

6- Requête avec paramètre (requête dynamique) :

Si on veut que la valeur du critère de sélection soit variable, c.-à-d. à chaque fois on donne
une valeur au critère de sélection, et on sélectionne les enregistrements vérifiant la valeur
sélectionnée, donc on doit avoir une variable qui contiendra à chaque fois une valeur
différente

Syntaxe:

select * from table where champ = :C

Remarque:

- Le paramètre ici est nommé C et les deux points qui le précèdent indiquent que c’est un
paramètre.
- Le paramètre en suite doit avoir un type adéquat (compatible au type du champ utilisé dans
la comparaison).
- Donner une valeur au paramètre par l’instruction suivante : (ex : valeur du comboBox)
adoquery1.Parameters.ParamByName('c').Value:= combobox1.Text;

Exemple:

- Le code source pour afficher le nom, prénom, âge, date naissance des stagiaires par
spécialité:

adoquery1.SQL.Add('select nom, prenom, age, date_naiss from stagiaire where NSpécialité= :c');

adoquery1.Parameters.ParamByName('c').Value:= combobox1.Text;

adoquery1.Open;

Les codes des spécialités sont affichés dans la liste du composant ComboBox

- Pour remplir le comboBox par les valeurs du champ NSpécialité de la table Spécialité :

adotable1.First;
while (not adotable1.Eof) do
begin
combobox1.Items.add(adotable1.FieldValues['NSpécialité']); ou:
combobox1.Items.add(adotable1.Fields[0].asstring); ou:
combobox1.Items.add(adotable1.FieldByName(‘NSpécialité’).asstring);
adotable1.Next; end;

Vous aimerez peut-être aussi