#1 Mon 26 January 2004 16:27
- Florent Luquet
- Invité
Chaine sql mapbasic
Bonjour,
Je cherche a passe differentes variables dans une chaine sql.
Do case i_ColType
Case 3
s_Sql2 = Select * from +s_NameTab+ where +s_NameChamp+ = + MotCle + into Selection
Run command s_Sql2
Case 1
s_Sql2 = Select * from +s_NameTab+ where +s_NameChamp+ = + str(MotCle) + into Selection
Run command s_Sql2
End case
Mon probleme vient d'une variable de type string (Manque les cotes )
Comment faire ?
Merci d'avance.
#2 Mon 26 January 2004 16:27
- Stéphane MOREL
- Invité
Re: Chaine sql mapbasic
pour passer les cotes dans une chaine sql il faut ajouter le code ascii
des guillemets : chr(34)
machainesql = "select * from matable where monchamp ="+chr(34)+mavariabledetypestring+chr(34)
Si tu fais un print de ta chaine sql tu obtiendras :
select * from matable where monchamp = "mavariabledetypestring"
#3 Mon 26 January 2004 19:39
- Lauffer Marc
- Invité
Re: Chaine sql mapbasic
Un grand classique : pour rajouter des quotes dans le resultat de ta concatenation, intercale chr(34)