salut tt le monde
j'ai un programe dans le quelle je veut utilisé des requette
alor j'ai placer les composant (Ttable,Query1,Tdatasource) dans ma Tform
mes ou doije ecrire le code de la requette?
salut tt le monde
j'ai un programe dans le quelle je veut utilisé des requette
alor j'ai placer les composant (Ttable,Query1,Tdatasource) dans ma Tform
mes ou doije ecrire le code de la requette?
merci bcp
Bonjour,
un composant TTable n'est pas fait pour recevoir une requête SQL mais un nom de table, c'est un composant particulier qui pour un nom de table va ramener tout le contenu de la table sans filtre (condition WHERE) sur les lignes.
Pour utiliser une requête SQL pour remonter un ensembles d'enregistrements de la base de données, vous devez utiliser un composant de TQuery et renseigner votre requête dans la propriété SQL de ce dernier.
La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème
Pas de sollicitations techniques par MP -
salut Aka Guymelef
merci pr votre répence
mais esque vous pouvé m'aidé a ecrire une premiére requette ??
j'ai pa trouvé de cour sur le sujet
merci bcp
C'est que vous n'avez pas bien chercher -> Le SQL de A à Z
PS : merci de faire attention à votre orthographe.
La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème
Pas de sollicitations techniques par MP -
Un petit exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 var maQuery : TQuery; begin maQuery := ... //initialisation de la conexion (si l'objet est sur la forme, tu ne dois plus créer à chaques fois le tquery et sa conexion). maQuery.sql.texte := 'select * from maTable'; maQuery.open; //pour un update, insert, ...tu dois faire maQuery.ExecSQL //tu peux parcourir le resultset avec une boucle du genre while not maQuery.eof do begin ... maQuery.Next; end; maQuery.free; //si créé en local. end;
Tu peux le faire, tu veux le faire tu vas le faire Bref, soyons positif
Mr Aka Guymelef merci
je vais m'y mettre je ss trés en retad
a vous aussi dd_garion grand merci
esque vous pouvé me dir comment voir tt ca dans mon DBGrid
merci bcp
Dans la logique un composant type DBGrid (mais aussi DBEdit etc...) ont besoin d'être connecté avec un composant TDataSource (via leur propriété DataSource), le composant TDataSource doit être connecté avec le DataSet (TTable ou TQuery) qui contient les enregistrements.
Une fois ces connexions faites, il est possible d'afficher les données visuellement en spécifiant les colonnes dans le DBGrid et en les liant via FieldName aux champs dans le DataSet.
Je suis sûr qu'il y a pleins de tutos là-dessus en cherchant ADO
La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème
Pas de sollicitations techniques par MP -
salut Aka Guymelef
j'ai mis une table
un datasource lie a la table par Dataset
un DBGrid1 lier au datasource par datasource
un Query1 dans le quelle j'ai mis le code suivant
j'ai mis activat=true
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4SELECT * FROM etat WHERE num='3'
un bouton pr lancer ma requette
que doi'j écrire dans mon bouton
merci bcp
Dans le code du bouton vous devez faire un Query1.Open pour exécuter la requête SQL.
La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème
Pas de sollicitations techniques par MP -
Cher Aka Guymelef merci
j'ai mis le code suivant :
mais mon DBGrid1 n'a pas changé ,il n'a méme pas séléctionné mon enregistrment
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 procedure Tf1.Button1Click(Sender: TObject); begin Query1.Open; end;
merci bcp
Le mieux je penses c'est que vous essayiez de suivre un tutoriel du site pour mieux comprendre toute la logique de fonctionnement comme celui-ci par exemple.
La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème
Pas de sollicitations techniques par MP -
Les conditions qui peut engendré ceci sont :
1) Votre table est vide.
2) La requête exécuté n'a aucun résultat (aucun tuple)
3) Votre "DBGrid1" n'est pas relié à un TDataSource !!
-> pour Relier votre "Query1" il vous faut un "DataSource" !!
-> puis, à travers la propriété "DataSet" relier le "Query1"
et la liéson avec le DBGrid sera avec le DataSorce.
Bon Courage..
______________________________________________________________________
Le sketch qui m'a marqué le plus! écoutez les programmeurs : Site de Yan Marchal
salut +bsdocuments+
merci bcp
vous avier raison j'ai mal relier le datasource au "Query1"
cela marche trés bien
et voici le code que j'ai mis dans mon bouton
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 procedure Tf1.Button1Click(Sender: TObject); begin Qfinal.Active; Qfinal.Open; end;
merci bcp
Qfinal.Active:=True; ou Qfinal.Open;
pas les deux , c'est pas la peine
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
salut
merci a tous
mon programe et entrain de prendre forme
question :
comment pui'je connaitre le nbr de enregistrement qui on satisfé ma requette
merci bcp
Bien que je sois résolument contre
QFinal.recordCount
il vaut mieux faire une seconde requete
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT COUNT(*) FROM etat WHERE num='3'
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
Une simple ligne c'est faisable:
a+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ShowMessage('Nombre des enregistrements : '+IntToStr(Query1.RecordCount));
______________________________________________________________________
Le sketch qui m'a marqué le plus! écoutez les programmeurs : Site de Yan Marchal
merci bcp tt le monde
ce code marche a merveille
merci bcp
salut
maintenant que j'ai séléctionné l'enregistrement que je veux esque je peut le copier a la fin de ma table ?
je veux le copier a la fin et le suprimé de la ou il été
esque c'est fesable
merci bcp
1er
Si l'enregistrement est de la source "Query1" donc, suit ceci:maintenant que j'ai séléctionné l'enregistrement que je veux esque je peut le copier a la fin de ma table ?
Sinon, si tu veux dire par ceci..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Table1.Insert; Table1['champs_1']:=Query1['champs_1']; Table1['champs_2']:=Query1['champs_2']; Table1['champs_3']:=Query1['champs_3']; . .. .... Table1.Post;
il faut savoir que l'ordre n'a aucun sensje veux le copier a la fin et le suprimé de la ou il été
car c'est automatiquement fait par le SGBD
et le seul facteur c'est la cléf de table que vous
utilisée qui peut indiquer l'ordre dans la table.
a+
______________________________________________________________________
Le sketch qui m'a marqué le plus! écoutez les programmeurs : Site de Yan Marchal
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager