首頁 >資料庫 >mysql教程 >如何使用 MySQL 的 ON DUPLICATE KEY 檢索上次插入/更新 ID?

如何使用 MySQL 的 ON DUPLICATE KEY 檢索上次插入/更新 ID?

DDD
DDD原創
2024-12-10 01:34:10399瀏覽

How to Retrieve the Last Insert/Update ID with MySQL's ON DUPLICATE KEY?

MySQL ON DUPLICATE KEY:檢索上次插入/更新ID

使用ON DUPLICATE KEY 執行INSERT 或UPDATE 語句時, () 函數通常傳回插入行的ID。但是,如果語句更新現有行,這種方法就會出現問題。

為了克服此限制並在不執行多個查詢的情況下檢索插入和更新的行的ID,MySQL 提供了一個解決方案:

正如MySQL 文件中提到的,透過將表達式傳遞給LAST_INSERT_ID(),您可以使其對更新有意義。具體來說,如果您想在使用ON DUPLICATE KEY 時檢索上次插入或更新的ID,可以採用以下技術:

假設「id」是AUTO_INCREMENT 列,請修改INSERT 語句以包含以下內容:

INSERT INTO table (a,b,c) VALUES (1,2,3)
  ON DUPLICATE KEY UPDATE>

在此範例中,對於插入,LAST_INSERT_ID() 將傳回新建立的行的ID。對於更新,它將傳回更新的行的 ID,有效地提供一致的方法來檢索這兩種情況下最後插入或更新的 ID。

以上是如何使用 MySQL 的 ON DUPLICATE KEY 檢索上次插入/更新 ID?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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