」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在 Python 中安全地建立帶有列表的 MySQL IN 子句?

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

發佈於2024-12-23
瀏覽:422

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 注入詢問。資料將直接插入查詢中,無需任何預處理,確保安全性和效率。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3