Podle specifikace databáze Python v PEP 249
, formát použitý v dotazu k zobrazení místa vložení parametrů závisí na paramstyle člen databázového modulu:
- pokud je to
qmark, použijte?(otazník) - pokud je
numeric, použijte:1,:2atd. (číselný, poziční styl) - pokud je
named, použijte:name(pojmenovaný styl) - pokud je
format, použijte%s(kódy formátu ANSI C printf) - pokud je
pyformat, použijte%(name)s(Kódy rozšířeného formátu Python)
AFAIR, MySQLdb používá format , takže byste měli nahradit ? s %s .(Pokud by MySQLdb správně používal připravené příkazy, byl by to qmark a ? byla správná cesta.)