vrachid
Messages postés109Date d'inscriptionlundi 6 mars 2006StatutMembreDernière intervention 5 octobre 2011 12 déc. 2009 à 09:27
bonjour à tous,
j'ai le même probleme de filtrage par date dans requete sql,
j'ai essayé la solution proposé par cantador, mais sans résultat, je reçois toujours un message d'erreur indiquant paramètre introuvable ('param') que j'ai créé sur l'AdoQuery
par contre quand je met deux paramètre et j'utilise la requete BETWEEN :parm1 and param2, ça marche.
voici le code qui fonctionne:
begin
Close;
SQL.Clear;
SQL.Add('SELECT * From recette where Date BETWEEN :Date1 and :Date2');
Parameters.ParseSQL(QrCaisse.SQL.Text, True);
Parameters.ParamByName('Date1').Value:=DateTimePicker1.Date;
Parameters.ParamByName('Date2').Value:=DateTimePicker2.Date;
Open;
ExecSql;
end;
et celui qui ne fonctionne pas
begin
Close;
SQL.Clear;
SQL.Add('SELECT * From recette where Date :=Date1');
Parameters.ParseSQL(QrCaisse.SQL.Text, True);
Parameters.ParamByName('Date1').Value:=DateTimePicker1.Date;
Open;
ExecSql;
end;
merci pour votre aide.
kahloch
Messages postés1Date d'inscriptionvendredi 1 février 2008StatutMembreDernière intervention21 juillet 2008 1 févr. 2008 à 01:03
tres bien
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 5 déc. 2007 à 19:00
Salut aghtor,
C'est un exercice sur les requêtes SQL ACCESS..
Il y a bcp de tutos à ce sujet un peu partout sur le net..
Le mieux est encore d'utiliser des requêtes paramétrées :
"Where ChampDate =:param"
AdoQuery1.ParamByName('param').Value := DonneeDateHeure;
ce qui offre un traitement plus aisé des données et une simplification du SQL..
et peut-être même un poil de rapidité en plus à l'exécution..
yvessimon
Messages postés637Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 9 janvier 2017 3 déc. 2007 à 09:11
Bonjour,
Bon exemple ACCESS avec SQL
Par contre initialiser ADOConnection1.ConnectionString à l'exécution si la base access existe
Ce qui permet en plus de chamger de base ACCESS.
Voir pour cela mon exemple avec excel.
redimentionner la dggrille afin qu'elle soit lisible dbgrid1.Columns[i].width := 1...
12 déc. 2009 à 09:27
j'ai le même probleme de filtrage par date dans requete sql,
j'ai essayé la solution proposé par cantador, mais sans résultat, je reçois toujours un message d'erreur indiquant paramètre introuvable ('param') que j'ai créé sur l'AdoQuery
par contre quand je met deux paramètre et j'utilise la requete BETWEEN :parm1 and param2, ça marche.
voici le code qui fonctionne:
begin
Close;
SQL.Clear;
SQL.Add('SELECT * From recette where Date BETWEEN :Date1 and :Date2');
Parameters.ParseSQL(QrCaisse.SQL.Text, True);
Parameters.ParamByName('Date1').Value:=DateTimePicker1.Date;
Parameters.ParamByName('Date2').Value:=DateTimePicker2.Date;
Open;
ExecSql;
end;
et celui qui ne fonctionne pas
begin
Close;
SQL.Clear;
SQL.Add('SELECT * From recette where Date :=Date1');
Parameters.ParseSQL(QrCaisse.SQL.Text, True);
Parameters.ParamByName('Date1').Value:=DateTimePicker1.Date;
Open;
ExecSql;
end;
merci pour votre aide.
1 févr. 2008 à 01:03
5 déc. 2007 à 19:00
C'est un exercice sur les requêtes SQL ACCESS..
Il y a bcp de tutos à ce sujet un peu partout sur le net..
Le mieux est encore d'utiliser des requêtes paramétrées :
"Where ChampDate =:param"
AdoQuery1.ParamByName('param').Value := DonneeDateHeure;
ce qui offre un traitement plus aisé des données et une simplification du SQL..
et peut-être même un poil de rapidité en plus à l'exécution..
3 déc. 2007 à 09:11
Bon exemple ACCESS avec SQL
Par contre initialiser ADOConnection1.ConnectionString à l'exécution si la base access existe
Ce qui permet en plus de chamger de base ACCESS.
Voir pour cela mon exemple avec excel.
redimentionner la dggrille afin qu'elle soit lisible dbgrid1.Columns[i].width := 1...
Salutations