」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何使用 PDO 準備語句將多行插入資料庫?

如何使用 PDO 準備語句將多行插入資料庫?

發佈於2024-11-16
瀏覽:459

How to Insert Multiple Rows into a Database with PDO Prepared Statements?

使用PDO 準備好的語句插入多行

使用單一準備好的語句將多行插入資料庫不僅是可能的,而且推薦用於

使用單一插入查詢的方法

第一種方法涉及使用具有多個值的單一INSERT 查詢:

INSERT INTO Table (col1, col2, col3) 
VALUES ('abc', 'def', 'ghi'),
       ('abc', 'def', 'ghi'),
       ('abc', 'def', 'ghi'),
       ('abc', 'def', 'ghi'),
       ('abc', 'def', 'ghi')
       -- and so on...

要使用 PDO 執行此查詢,可以按照以下步驟操作:

$query = "INSERT INTO Table (col1, col2, col3) 
VALUES (?, ?, ?),
       (?, ?, ?),
       (?, ?, ?)
";
$params = array('abc', 'def', 'ghi', 'abc', 'def', 'ghi', 'abc', 'def', 'ghi');
$stmt = DB::getInstance()->prepare($query);
$stmt->execute($params);

單獨插入查詢的方法

如果要插入的行數太大,您可能需要執行單一插入查詢:

$query = "INSERT INTO Table (col1, col2, col3) VALUES (".implode(',', $args).")";
$stmt = $pdo->prepare($query);

foreach ($rows as $row) 
{
   $stmt->execute($row);
}

此方法可確保每行單獨插入,從而最大程度地降低插入過程中出現問題的風險。

結論

是否使用單一插入具有多個值的查詢或單一插入查詢,PDO 準備語句提供了將多行插入資料庫的高效且安全的方法。選擇正確的方法取決於應用程式和資料庫的特定要求。

最新教學 更多>

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

Copyright© 2022 湘ICP备2022001581号-3