cs_manudel
Messages postés63Date d'inscriptionlundi 29 avril 2002StatutMembreDernière intervention 7 mars 2005
-
5 nov. 2002 à 19:07
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 2013
-
5 nov. 2002 à 20:01
J'ai un composant de type TOracleDataSet.
J'ai une requête SQL dans mon OracleDataSet.
Dans ma clause WHERE, j'ai notamment ceci :
AND EVEN_TYP_EVT IN (:TypeEvt)
Je vérifie avec le mode debug de mon OracleDataSet, que les paramètres que je lui envoie sont bien passés correctement.
exemples pour TypeEvt :
-> 'C'
-> 'C','P'
L'OracleDataSet ne me renvoie aucune donnée, or :
- quand je fais une requête sur la base, j'ai des données
- si je supprime la ligne avec le 'IN' dans ma clause WHERE, j'ai bien des données.
Dois-je en conclure que ce n'est pas possible de passer des paramètres dans un 'IN' (que la chaîne de caractères ait une seule composante ou deux composantes) ?
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 5 nov. 2002 à 20:01
As-tu mis entre quotes ton paramètre TypeEvt ?
Sinon, je te recommande l'utilisation de la fonction QuotedStr (surtout si tu dois passer des paramètres chaines).
Cette fonction analyse le paramètre transmis et renvoie une chaine avec autant de quotes qu'il faut et au bon endroit.
En revanche, dans le ceuxième cas que tu cites ('C','P' ), là ça me semble plus délicat (sauf si tu mets des double quotes autour des caractères).