Python SQLite paramètre de substitution avec des caractères spéciaux COMME
Je suis d'essayer d'utiliser un paramétrées COMME requête avec Python Sqlite bibliothèque comme ci-dessous:
self.cursor.execute("select string from stringtable where string like '%?%' and type = ?", (searchstr,type))
mais l' ? à l'intérieur de l'génériques ne sont pas évaluées me laissant avec cette erreur:
"sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 2 supplied."
J'ai aussi essayé d'utiliser la tagged version de l'interrogation avec:
like '%:searchstr%'
et de la liste ayant {"searchstr":searchstr...
mais quand je le fais, que la requête s'exécute mais ne retourne aucun résultat, même si manuellement en mettant en "like '%a%'"...
retour des centaines de résultats comme il se doit
des suggestions s'il vous plaît?
Vous devez vous connecter pour publier un commentaire.
Les guillemets protéger soit
?
ou:name
d'être pris comme une place de titulaire, ils sont pris à la lettre. Vous devez placer les signes de pourcentage autour de la chaîne que vous êtes en passant, et l'utilisation de la plaine de l'espace réservé sans les guillemets. I. e.:Noter que ni
?
est entre guillemets, et c'est exactement comme il devrait l'être pour eux d'être pris comme repères."$var"
en PHP serait d'analyser la valeur de$var
entre guillemets.vars()
à la.substitute
méthode.