変数を使用して Python で SQL ステートメントを実行する
P粉731977554
P粉731977554 2023-10-12 15:06:00
0
2
697

次の Python コードがあります:

リーリー

ここで、var1 は整数、var2var3 は文字列です。

Python を使用せずに変数名を (クエリ テキストの一部として) 記述するにはどうすればよいですか?

P粉731977554
P粉731977554

全員に返信(2)
P粉718165540

Python DB-API の実装が異なると、使用できるプレースホルダーも異なるため、どのプレースホルダーを使用しているかを確認する必要があります (おそらく (MySQLdb を使用するなど)):

リーリー

または (たとえば、Python 標準ライブラリの sqlite3 を使用する):

リーリー

またはその他 (VALUES の後には (:1, :2, :3) または「名前付きスタイル」 (:fee, : fie, :fo を指定できます) ) または (%(fee)s, %(fie)s, %(fo)s) ここでは、マップの代わりに辞書を implement## の 2 番目の引数として渡します。 #)。使用している DB API モジュールの paramstyle 文字列定数を確認し、http://www.python.org/dev/peps/pep-0249/ ですべてのパラメータを確認してください。配信スタイル!

いいねを押す +0
P粉521697419

リーリー

パラメータはタプル (a, b, c) で渡されることに注意してください。単一の引数を渡す場合、タプルはコンマ (a,) で終わる必要があります。

データベース API は変数を適切にエスケープし、引用符で囲みます。文字列フォーマット演算子 (%) は使用しないように注意してください。

    エスケープや引用は行いません。
  1. は、
  2. SQL_injection などの制御されていない文字列フォーマット攻撃に対して脆弱です。
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート