PEP249
のPythonデータベース仕様によると 、パラメータを挿入する場所を示すためにクエリで使用される形式は、paramstyleによって異なります。 データベースモジュールのメンバー:
-
qmarkの場合 、?を使用します (疑問符) numericの場合 、:1を使用します 、:2など(数値、位置スタイル)- 名前が
named、:nameを使用します (名前付きスタイル) -
formatの場合 、%sを使用します (ANSI C printfフォーマットコード) -
pyformatの場合 、%(name)sを使用します (Python拡張フォーマットコード)
AFAIR、MySQLdbはformatを使用します 、したがって、?を置き換える必要があります %sを使用 (MySQLdbがプリペアドステートメントを適切に使用する場合、それはqmarkになります。 および? 正しい道でした。)