Pb executescalar

Résolu
cs_shendu Messages postés 7 Date d'inscription dimanche 29 février 2004 Statut Membre Dernière intervention 17 août 2015 - 18 avril 2006 à 10:24
cs_shendu Messages postés 7 Date d'inscription dimanche 29 février 2004 Statut Membre Dernière intervention 17 août 2015 - 20 avril 2006 à 10:18
bonjour à tous,
je'ai un soucis de résultat de requête avec une base access.
j'ai une table avec 2 champs (numero int, nom char) et un rec à l'intérieur (5,truc).

Ensuite j'ai essayé cette syntaxe :requete "select min(numero) from table where nom 'truc';";
int temp = (int)Cmd.ExecuteScalar();
La pas de problème j'ai bien temp = 5.

Par contre si je fais:
requete = "select min(numero) from table where nom like '*truc*';";
int temp = (int)Cmd.ExecuteScalar();
Et bien la ça plante, apparemment ça me retourne null (j'ai fait string temp = Cmd.ExecuteScalar().ToString(); et il retourne du vide donc je suppose que c'est du null), ce serait lié au fait que je fasse un LIKE dans ma requete.
Alors si quelqu'un a une idée parce que j'ai besoin du LIKE dans ma requete.

Merci d'avance

Shendu.

3 réponses

hlayachi Messages postés 62 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 24 avril 2006
18 avril 2006 à 23:17
bonsoir
non le résultat de ta requête n'est à cause de l'utilisation de LIKe, mais à cause de *. donc tu remplaces ton * par %
3
cs_shendu Messages postés 7 Date d'inscription dimanche 29 février 2004 Statut Membre Dernière intervention 17 août 2015
19 avril 2006 à 11:25
je suis pas d'accord avec hlayachi, la requête sous access avec les * fonctionne donc je vois pas pourquoi le fait de mettre des % va changer quelquechose, mais je vais essayer quand même
0
cs_shendu Messages postés 7 Date d'inscription dimanche 29 février 2004 Statut Membre Dernière intervention 17 août 2015
20 avril 2006 à 10:18
Bon apparemment ça fonctionne mieux avec le %.
Si quelqu'un sait pourquoi, vu que les 2 syntaxes (* ou %) sont correctes sous access.
0
Rejoignez-nous