MySqlDb ist ein fantastisches Python-Modul - aber ein Teil ist unglaublich nervig. Abfrageparameter wie folgt aussehenWie verwenden Sie das Python Msqldb-Modul? anstelle von% s für Abfrageparameter?
cursor.execute("select * from Books where isbn=%s", (isbn,))
während überall sonst im bekannten Universum (Oracle, SQL Server, Zugang, sybase ...) sie diese aussehen
cursor.execute("select * from Books where isbn=?", (isbn,))
Das bedeutet, dass, wenn Sie wollen tragbar zu sein, müssen Sie irgendwie zwischen den beiden Notationen wechseln? und% s, was wirklich nervig ist. (Bitte sagen Sie mir nicht, eine ORM-Schicht zu verwenden - ich werde Sie erwürgen).
Angeblich können Sie mysqldb dazu verleiten, die Standardsyntax zu verwenden, aber ich habe es noch nicht hat es funktioniert. Irgendwelche Vorschläge?
Tatsächlich haben neuere Systeme benannte Parameter, die wie folgt aussehen: "Select * from Books wo isbn = @ISBN" –