PythonとMySQLdb:テーブルの置換により構文エラーが発生する

StackOverflow https://stackoverflow.com/questions/9394291

  •  29-10-2019
  •  | 
  •  

質問

テーブルと変数を時々動的に変更する必要があるため、次のようなPythonメソッドを作成しました。 ジェネラコディセタグプレ

ただし、これにより構文エラー例外が発生します。デバッグしてみたので、メソッドに変数を出力して手動で入力しましたが、うまくいきました。だから私は何が間違っているのかわかりませんか?

テーブルの代わりに使用しようとしているからですか?

また、mysqldbをデバッグして、置換されたクエリを文字列として出力するにはどうすればよいですか?

役に立ちましたか?

解決

DB APIのパラメータ置換は値のみであり、テーブルやフィールドではありません。これらには通常の文字列置換を使用する必要があります: ジェネラコディセタグプレ

値のプレースホルダーには二重の%があることに注意してください。これは、最初の文字列置換によってそのまま残されるようにするためです。

他のヒント

これが完全な実例です ジェネラコディセタグプレ

テーブル名と列名を追加するには、文字列置換を使用する必要があります。ドライバーはパラメーターのみを処理します。

エド:NM、ダニエルはより速く、より完全に答えました

書くつもりでしたか: ジェネラコディセタグプレ

これは文字列の書式設定の間違いですか?

ところで、なぜこの種の作業のために明示的なSQLを作成するのですか?PythonSQLの操作には魔法の sqlalchemy を使用することをお勧めします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top