Erreur requete sql

cs_houhou72 Messages postés 17 Date d'inscription dimanche 9 octobre 2011 Statut Membre Dernière intervention 15 février 2012 - 7 févr. 2012 à 10:59
tri_yann Messages postés 124 Date d'inscription mercredi 23 novembre 2005 Statut Membre Dernière intervention 19 septembre 2013 - 19 avril 2012 à 22:21
bonjours;
j'ai fait une bdd ou j'enregistre les payements des adherents dans une piscine, je veux avoir l'état d'une journée entrée dans un datetimepicker en utilisant une requete paramétrée voici le code:
query1.active:=false;
query1.params[0].asdate:=dateentree.date;
query1.active:=true;

voici ma requete:
select*
from recu
where datej like :date1/*le nom de mon parametre*/

j'ai un message d'erreur qui s"affiche:
difference de type dans une expression
s'il vous plait aidez moi; je patine depuis des semaines et je suis pris par le temps.
merci d'avance.

5 réponses

Utilisateur anonyme
14 févr. 2012 à 00:07
Essaye en remplaçant ton "like" par un "=" car j'ai un petit doute pour ce qui est des comparaisons de dates avec "like".


--
Pylouq
0
cs_houhou72 Messages postés 17 Date d'inscription dimanche 9 octobre 2011 Statut Membre Dernière intervention 15 février 2012
15 févr. 2012 à 09:19
bonjour,
j'ai essayé avec "=" un autre message s'affiche 'trecu: champs date1 non trouvé' alors que date1 est un parametre et non un champs de ma bd, merci pour vous pylouq; vous etes le seul à vouloir m'aider.
0
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
15 févr. 2012 à 11:11
Salut,

[..] vous etes le seul à vouloir m'aider.

C'est peut-être le seul à en avoir la capacité. Perso si tu me dis pas quel langage, quel SGBD et quelle couche logicielle entre les deux tu utilises, je vois pas bien ce que je pourrai te dire :
- Pour ton premier problème je crois pas qu'un seul SGBD aime le "LIKE date", à voir selon celui que tu utilises.
- Pour ton deuxième problème c'est le langage de prog et la couche d'accès qui sont en cause, ton paramètre n'est pas reconnu en tant que tel.
0
Utilisateur anonyme
9 avril 2012 à 23:49
Pour reprendre ce qu'a dit jopop, dis nous quels sont tes outils, notamment le SGBD (MySQL ? Oracle ? Postgres ?) et quel langage (Java ?) sont utilisés. Es-tu sur que tes requêtes paramétrées sont formées de cette façon ? Par exemple on peut utiliser un ? au lieu de faire :variable. Mais ça, ça dépend des outils utilisés...

--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tri_yann Messages postés 124 Date d'inscription mercredi 23 novembre 2005 Statut Membre Dernière intervention 19 septembre 2013 3
19 avril 2012 à 22:21
Bonjour,

Je ne connais pas ce langage, mais je sais que ton problème peut venir d'un format différent entre le champ datej de ta table et le paramètre(0) qui est peut-être du texte. Il est difficile de faire des opérations sur des dates. Il faut souvent faire une conversion d'un texte (10/01/2012) en format date. Ex :
CAST('01/10/2012' as Datetime)


Yann
0
Rejoignez-nous