2017-06-30 12 views
0

Ich verwende ein Python-Skript, das einen Datensatz in eine MySQL-Tabelle einfügt. Die Daten werden in einer CSV-Datei gespeichert und der Dateiname und der Speicherort werden mit einer Variablen referenziert. Nachdem ich jedoch einen Wert zugewiesen habe (geschrieben als '% s' in meinem Code), versucht Python jetzt, meinen anderen SQL-Code zu interpretieren, der sich auf ein Datum in meinem Code bezieht.Ignoriere% d in Python (MySQL)

Zum Beispiel:

PreviousName7CONDATE = IF(@PreviousName7CONDATE = '', NULL, STR_TO_DATE(@PreviousName7CONDATE, '%d/%m/%Y')) 

Die% d, und ich gehe davon% m und auch% Y, sobald die% d Problem überwunden wird, ist mein Einsatz Skript verhindert läuft. Hat jemand irgendwelche Vorschläge?

Vielen Dank

Antwort

1

Nur wörtliche Prozentzeichen in dem Query-String entkommen. Angenommen, Sie MySQLdb verwenden, schlagen die docs genau das:

Beachten Sie, dass alle wörtlichen Prozentzeichen in der Abfrage-String zu weitergegeben execute() müssen entwertet werden, das heißt %%.