Requete Select sql

Ricolabricot Messages postés 7 Date d'inscription lundi 8 décembre 2003 Statut Membre Dernière intervention 15 février 2004 - 12 févr. 2004 à 17:20
cs_Kruger Messages postés 68 Date d'inscription vendredi 31 janvier 2003 Statut Membre Dernière intervention 4 octobre 2004 - 15 févr. 2004 à 18:00
Je voudrais savoir ce que renvoie une requete SELECT et comment resortir une par une les données lorsque la requete renvoie plusieurs donnée ?

Merci d'avance...

4 réponses

cs_Kruger Messages postés 68 Date d'inscription vendredi 31 janvier 2003 Statut Membre Dernière intervention 4 octobre 2004
14 févr. 2004 à 23:24
Une requete SELECT permet de selectionner les données contenue dans un champ qui lui se trouve dans une table, le tout dans une base, exemple:

"SELECT nom FROM user" renvoie tous les nom contenu dans la table user, tu peux aussi affiné cette selection en indiquant une condition par exemple:

"SELECT nom FROM user WHERE age = 22" renvoie tous les nom de la table user qui ont un age de 22 ans

Pour plus de precision regarde ici :
http://wwwlsi.supelec.fr/www/yb/poly_bd/sql/tdm_sql.html

Pour ce qui est de la récupération des résultat, tout dépend de ce que tu utilise pour ta communication avec ta base, moi j'utilise l'api mysql.pas qui s'appuie sur la dll officielle de MySQL que tu peux utiliser simplement avec la version perso de DELPHI, tu peux la trouver ici.
Dans ce cas, tu fais:

mysql_query(mysql, pChar('SELECT nom FROM user WHERE age =22'));
resultat:=mysql_use_result(MySQL);
row:=mysql_fetch_row(resultat);

--==[Kruger]==--
0
cs_Kruger Messages postés 68 Date d'inscription vendredi 31 janvier 2003 Statut Membre Dernière intervention 4 octobre 2004
14 févr. 2004 à 23:32
J'oubliais, dans l'exemple ci dessus, tes résultats sont sous la forme d'un tableau:
__________________
| 0 |xxx               |
----------------------
| 1 |yyy                |
----------------------
| 2 |zzz                |
----------------------

Donc pour l'affichage dans un label, tu fais:

Label1.Text:=row[0];

Ce qui va te permettre de choisir le résultat en indice 0 donc xxx dans l'exemple, ou yyy avec row[1], ...

J'espère avoir été clair dans mon explication, si tu comprend toujours pas, fais le savoir, je suis mauvais prof :) .

--==[Kruger]==--
0
Ricolabricot Messages postés 7 Date d'inscription lundi 8 décembre 2003 Statut Membre Dernière intervention 15 février 2004
15 févr. 2004 à 13:59
Oki merci.

Comment faire pour recuperez les resultats sans utiliser mysql.pas car dans le projet que je dois faire pour mon école je ne peut l'utiliser...
0
cs_Kruger Messages postés 68 Date d'inscription vendredi 31 janvier 2003 Statut Membre Dernière intervention 4 octobre 2004
15 févr. 2004 à 18:00
Dans ce cas, tu peux utiliser le BDE ou encore les composants ADO mais là je suis pas en mesure de te venir en aide, je les utilise pas je travaille qu'avec la version perso qui ne les à pas (pour rester un honnête citoyen, lol), regarde plutot du coté des sources si personne ne te réponds.
--==[Kruger]==--
0
Rejoignez-nous