首頁 >後端開發 >php教程 >如何在 PHP 中使用 PDO 檢索最後插入的 ID?

如何在 PHP 中使用 PDO 檢索最後插入的 ID?

Susan Sarandon
Susan Sarandon原創
2024-12-27 18:59:14252瀏覽

How to Retrieve the Last Inserted ID Using PDO in PHP?

PDO:擷取最後插入的ID

在資料庫操作中,經常需要擷取表中最後插入的記錄的ID 。 PDO(PHP 資料物件)提供了透過 PDO::lastInsertId() 方法執行此操作的功能。

要取得最後插入的 ID,您需要執行 SQL INSERT 語句並使用 PDO::lastInsertId PDO 物件上的 () 方法。例如:

$stmt = $db->prepare("INSERT INTO `cell-place` (name) VALUES (?)");
$stmt->execute([$name]);
$id = $db->lastInsertId();

在此範例中,$db 是 PDO 對象,$stmt 是準備好的語句,$name 是要插入的值。 PDO::lastInsertId() 方法傳回新插入記錄的自動遞增 ID。

如果您嘗試直接使用 LAST_INSERT_ID() 函數(如給定程式碼所示),您將遇到錯誤。這是因為 LAST_INSERT_ID() 是一個 SQL 函數,而不是 PHP 函數。要將其與 PDO 一起使用,您必須使用 PDO::lastInsertId() 方法。

或者,您可以使用直接 SQL 查詢來擷取最後插入的 ID:

$stmt = $db->query("SELECT LAST_INSERT_ID()");
$row = $stmt->fetch(PDO::FETCH_NUM);
$lastId = $row[0];

此方法執行原始 SQL 查詢來擷取最後插入的 ID。它的效率比使用 PDO::lastInsertId() 低,但如果您有複雜的 SQL 查詢需要手動執行 ID 檢索,它會很有用。

以上是如何在 PHP 中使用 PDO 檢索最後插入的 ID?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn