安全性MySQL IN 子句的內爆列表
要安全地在MySQL IN 子句中使用ID 列表並避免SQL 注入,列表請使用MySQL參數化功能,而不是手動內爆清單並自行轉義。
format_strings = ','.join(['%s'] * len(list_of_ids)) cursor.execute("DELETE FROM foo.bar WHERE baz IN (%s)" % format_strings, tuple(list_of_ids))
這個方法有幾個優點:
請注意,資料作為值的元組傳遞,在 MySQL 查詢中使用是安全的。 format_strings 變數為參數建立一個以逗號分隔的佔位符清單。
以上是如何在 MySQL IN 子句中安全地使用 ID 清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!