
Envoyé par
wiztricks
Salut,
Alors pour convertir un int/float en string, on lu applique str(...).
- W
C'est qu'il me semble faire avec ce code
query = "INSERT INTO " + key[2] + "(`" + "`, `".join(fields) + "`) VALUES(" + ", ".join(str(value) for value in values) + ");"
Mais plus j'y et plus je me dis que mon problème est lié à quand encadrer la valeur par des double quotes ou pas.
Si je reprend mon exemple du début
values = ["une chaine", 1, 10.65]
- une chaine : doit être encadré
- 1 et 10.65 : ne doivent pas être encadré
Avant de poster j'avais ce code
query = "INSERT INTO " + key[2] + "(`" + "`, `".join(fields) + "`) VALUES(\"" + "\", \"".join(values) + "\");"
Le résultat était
query = "INSERT INTO maTable(`champ1`, `champ2`, `champ3`) VALUES("une chaine", "1", "10.65");"
Les double quotes étaient gérés mais ils s'appliquaient à toutes les valeurs de la liste values. J'ai l'impression q'avec join() c'est un peu le serpent qui se mord la queue ?
Je rappel que je souhaite atteindre ce résultat
query = "INSERT INTO maTable(`champ1`, `champ2`, `champ3`) VALUES("une chaine", 1, 10.65);"
Partager