安全、高效地將大量資料插入 MySQL 資料庫對於許多應用程式至關重要。本問題探討了有效插入 2000 行同時確保 SQL 注入保護的技術。
提供的程式碼片段迭代一組值,為每次插入準備並執行單獨的查詢。雖然可以防止 SQL 注入,但這種方法效率低下,並可能導致堆疊溢位。
交易的增強解決方案:
更最佳化的解決方案涉及利用 MySQL 事務。透過將插入分組到單一事務中,資料庫可以優化流程並顯著減少執行時間。
$array = array("array", "with", "about", "2000", "values"); $query = "INSERT INTO table (link) VALUES (?)"; $stmt = $mysqli->prepare($query); $stmt->bind_param("s", $one); $mysqli->query("START TRANSACTION"); foreach ($array as $one) { $stmt->execute(); } $stmt->close(); $mysqli->query("COMMIT");
效能比較:
此技術提供了基準測試證明,速度顯著提高:
這對於測試案例而言,速度提升了兩個數量級,令人印象深刻。
透過利用事務,您可以有效地插入批量數據,同時保持 SQL 注入安全性並避免堆疊溢位。
以上是如何有效率地向MySQL插入2000行,同時防止SQL注入和堆疊溢位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!