如何在 Python 中安全地建立帶有列表的 MySQL IN 子句?

Patricia Arquette
發布: 2024-11-15 05:08:02
原創
239 人瀏覽過

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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板