Ich weiß, wie man eine Liste einem String zuordnet:
foostring = ";".join( map(str, list_of_ids) )
Und ich weiß, dass ich das Folgende verwenden kann, um diesen String in eine IN-Klausel zu bekommen:
cursor.execute("DELETE FROM foo.bar WHERE baz IN ("%s")" % ( foostring))
Was ich brauche, ist, dasselbe SICHER zu erreichen (Vermeidung von SQL-Einschleusung) mit MySQLDB. Da im obigen Beispiel der Fußstring nicht als Argument für die Ausführung übergeben wird, ist er angreifbar. Ich muss auch außerhalb der MySQL-Bibliothek zitieren und entkommen.
(Es gibt eine verwandte SO-Frage, aber die dort aufgeführten Antworten funktionieren entweder nicht für MySQLDB oder sind anfällig für SQL-Injection.)