Pb requete sql

Résolu
Willos78 Messages postés 27 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 23 janvier 2008 - 6 déc. 2007 à 17:24
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 - 7 déc. 2007 à 18:04
hello

J'ai une table que je veux consulter pour savoir si un code y est déjà.
Je passe par adoquery mais cela ne passe pas. Il me renvoie une erreur LRI : nom de colonne incorrecte hors ce n'est pas le cas.

Mon code :
DataModulepmr.ADOTableGmr.Active := true;
DataModulepmr.adoquery1.SQL.Clear;
DataModulepmr.adoquery1.sql.add('select * from T_gmr where t_gmr.C_gmrcode = "'+ copy(ligne,8,3)+'"');
DataModulepmr.adoquery1.Open;
writeln(DataModulepmr.ADOQuery1.RecordCount);

Merci de votre aide

willos

10 réponses

Willos78 Messages postés 27 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 23 janvier 2008
7 déc. 2007 à 09:04
yop yop
ahhh la douceur d'une réveiller par ma fille toutes les 45 min ça aide àa faire travailler mes pauvres heu neurone on va dire ça et ce matin :

adoquery1.sql.add('select C_gmrcode from T_gmr where t_gmr.C_gmrcode = '''+ copy(ligne,8,3) +'''');

maintenant j'ai le droit à mon chocolat :)
encore merci pour votre aide !!
bonne journée !!

willos
3
Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 6
7 déc. 2007 à 09:30
autant pour moi, le premiere serie de cotes etait composée de 3 cotes, 2 pour faire une simple cote, 1 pour fermer la string; alors que la deuxieme serie de 4 : 1 pour ouvrir la string, 2 pour faire une simple cote, 1 pour fermer la string.
3
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
7 déc. 2007 à 10:03
Une petite astuce: utilise la fonction QuotedStr() au lieu de "  ".
Ça permet un code plus lisible.
A+
3
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
6 déc. 2007 à 18:58
Salut,

si C_gmrcode est de type entier/float, tu peux pas le mettre sous des guillemets!!!

DataModulepmr.adoquery1.sql.add('select * from T_gmr where t_gmr.C_gmrcode = "'+ copy(ligne,8,3)+'"');

A+
0

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

Posez votre question
Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 6
6 déc. 2007 à 19:59
essaye sans le nom de table
DataModulepmr.adoquery1.sql.add('select * from T_gmr where C_gmrcode = "'+ copy(ligne,8,3)+'"');

ou sinon avec des simples cotes si c'est un champ textuel
DataModulepmr.adoquery1.sql.add('select * from T_gmr where C_gmrcode =''''+ copy(ligne,8,3)+'''');
//<- 2 fois 4 simples cotes
0
Willos78 Messages postés 27 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 23 janvier 2008
6 déc. 2007 à 23:33
re
@Mauricio

j'avoue j'ai été faible mais bon je n'ai fait que des tables qui contiennent que du texte
en faisant ta méthode j'obtient une erreur LRI : nom de colonne incorrecte
arf

@Guillemouze

le copy(ligne,8,3) renvoie du texte
avec ta méthode il me dit que copy n'est pas un nom de fonction reconnue
note j'ai du rajouter à ta ligne une cote pour finir le select

re arf
0
Willos78 Messages postés 27 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 23 janvier 2008
6 déc. 2007 à 23:38
re re
note si vous avez une autre méthode pour vérifier que mon texte ne se trouve pas dans ma table je suis preneur :)

bonne nuit et encore merci pour votre aide
0
Willos78 Messages postés 27 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 23 janvier 2008
7 déc. 2007 à 09:47
 no problemo 

++
0
Willos78 Messages postés 27 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 23 janvier 2008
7 déc. 2007 à 10:18
Ouah cool va falloir que je me mette un  peu au sql  y a l'air d'avoir des trucs sympa

Merci pour l'astuce !! je prend :)
++
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
7 déc. 2007 à 18:04
La soluce nickel chrome : requête paramétrée
foi de cantador

cantador
0
Rejoignez-nous