Erreur d'analyse sql

Résolu
senv Messages postés 18 Date d'inscription lundi 15 janvier 2007 Statut Membre Dernière intervention 6 septembre 2015 - 10 févr. 2010 à 11:57
beckerich Messages postés 302 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 17 septembre 2013 - 10 févr. 2010 à 16:43
Bonjour à tous,

Voilà j'essaye d'affiché le résultat d'une requête dans une stringgrid mais j'ai une erreur à l'exécution : Erreur d'analyse sql : EOF détecté dans une chaîne.

Voici le code :
StringGrid.Cells[0,1]:=TTreeView.Selected.Text;

      ModuleDeDonnees.IBQuery.SQL.Text:='SELECT identifiant FROM users' +
                                         ' WHERE libelle = '''+StringGrid.Cells[0,1]+'';
      ModuleDeDonnees.IBQuery.ExecSQL;
      StringGrid.Cells[0,1]:=ModuleDeDonnees.IBQuery.FieldByName('Identifiant').AsString;


Pouvez-vous m'aider, me dire d'où vient l'erreur et comment la résoudre s'il vous plait ?

Merci d'avance

3 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
10 févr. 2010 à 13:04
Salut,

Il manque un ''
StringGrid.Cells[0,1]:=TTreeView.Selected.Text;

      ModuleDeDonnees.IBQuery.SQL.Text:='SELECT identifiant FROM users' +
                                         ' WHERE libelle = '''+StringGrid.Cells[0,1]+'''';
      ModuleDeDonnees.IBQuery.ExecSQL;
      StringGrid.Cells[0,1]:=ModuleDeDonnees.IBQuery.FieldByName('Identifiant').AsString;


Utilises des requetes paramétrées pour eviter ce problème.
3
senv Messages postés 18 Date d'inscription lundi 15 janvier 2007 Statut Membre Dernière intervention 6 septembre 2015
10 févr. 2010 à 13:36
super, merci beaucoup ! j'ai eu beau cherché pendant un moment, j'avais pas pensé à ça :/

je ne sais pas comment fonctionne les requêtes paramétrées mais je me renseignerai :)

encore merci !
0
beckerich Messages postés 302 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 17 septembre 2013 2
10 févr. 2010 à 16:43
bonjour,

je pense que execsql est incorrect sur un select, utilise plutôt Open.

Luc.
0
Rejoignez-nous