ADO + nom de table avec ":"

davix123 Messages postés 21 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 6 octobre 2008 - 5 févr. 2006 à 17:15
cs_pouicky Messages postés 19 Date d'inscription lundi 26 avril 2004 Statut Membre Dernière intervention 4 août 2010 - 8 févr. 2006 à 00:10
Bonjour,


je dois reprendre une application sous access. Mon problème est le suivant : certaines tables ont un nom qui comportent le caractère ":", par exemple : "Liste : compartiment".


J'utilise ADO avec Delphi.


With AdoQuery1 do
begin
sql.clear;
sql.add('select * from [Liste : compartiment]');
connection:=adoconnection1;
active:=True;
ETC...


J'obtiens alors l'erreur suivante : l'objet Parameter défini de manière incorrect. J'ai essayé de remplacer les : avec son caractère ASCII, même soucis.


Avez-vous une idée ?


Merci de votre aide.


Cordialement

1 réponse

cs_pouicky Messages postés 19 Date d'inscription lundi 26 avril 2004 Statut Membre Dernière intervention 4 août 2010
8 févr. 2006 à 00:10
pour réécrire ça
sql.add('select * from [Liste : compartiment]');

il faut bien faire attention aux espaces et à la découpe de la chaine
soyons méthodique devant le doute:

chaine:='select * from [Liste_' + chr(code acii(:))+ '_compartiment]';
puis
messageBox chaine;
ou encore
Teditquelconque.text:=chaine;
//pour vérifier les espaces
si le probleme venait d'une particularité ADO ou access, ou delphi, une idee (on ne sait jamais) serait de faire un 'select * from table' pour voir comment le nom du champ t'est renvoyé



<HR>
Imaginer, c'est retrouver un déjà vu que l'on ne connaissait pas.
0
Rejoignez-nous