Python でリストを使用して MySQL IN 句を安全に作成する方法

Patricia Arquette
リリース: 2024-11-15 05:08:02
オリジナル
236 人が閲覧しました

How to Safely Create MySQL IN Clauses with Lists in Python?

リストを使用した安全な MySQL IN 句の作成

MySQL データベースと Python を使用する場合、リストを内部分解して使用すると便利です。 IN 句。ただし、SQL インジェクションの脆弱性を防ぐために、これを安全に行うことが不可欠です。

値のリストを含む文字列を手動で構築する代わりに、クエリ パラメーター メカニズムを使用することをお勧めします。これにより、引用符やエスケープを処理することなく、リストをデータベース ドライバーに直接渡すことができます。

これを実現する方法は次のとおりです。

format_strings = ','.join(['%s'] * len(list_of_ids))
cursor.execute("DELETE FROM foo.bar WHERE baz IN (" + format_strings + ")", tuple(list_of_ids))
ログイン後にコピー

このメソッドを使用すると、次のことができます。 MySQL がクエリのパラメータ化を処理できるようにすることで、SQL インジェクションを回避します。データは前処理なしでクエリに直接挿入されるため、安全性と効率性の両方が保証されます。

以上がPython でリストを使用して MySQL IN 句を安全に作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート