So come mappare una lista su una stringa:
foostring = ";".join( map(str, list_of_ids) )
E so che posso usare quanto segue per inserire quella stringa in una clausola IN:
cursor.execute("DELETE FROM foo.bar WHERE baz IN ("%s")" % ( foostring))
Quello di cui ho bisogno è realizzare la stessa cosa IN SICUREZZA (evitando SQL injection) usando MySQLDB. Nell'esempio precedente, poiché footstring non viene passato come argomento da eseguire, è vulnerabile. Devo anche citare ed evadere al di fuori della libreria mysql.
(C'è una domanda SO relativa
a>, ma le risposte elencate non funzionano per MySQLDB o sono vulnerabili a SQL injection.)