首頁 > 資料庫 > mysql教程 > 在多行插入的情況下,對 MySQL LAST_INSERT_ID() 函數的輸出有何影響?

在多行插入的情況下,對 MySQL LAST_INSERT_ID() 函數的輸出有何影響?

WBOY
發布: 2023-09-02 13:13:02
轉載
817 人瀏覽過

在多行插入的情况下,对 MySQL LAST_INSERT_ID() 函数的输出有何影响?

眾所周知,MySQL LAST_INSERT_ID() 函數傳回最新產生的序號,但在多行插入的情況下,它將傳回由最前面插入的行產生的序號。

範例

mysql> Insert into Student(Name) values('Ram'),('Mohan'),('Aryan');
Query OK, 3 rows affected (0.03 sec)
Records: 3 Duplicates: 0 Warnings: 0
登入後複製

上面的查詢借助多行插入查詢在 Student 表中插入三個值。可以藉助以下查詢來檢查列「Id」的值-

mysql> Select * from Student;

+----+-------+
| Id | Name  |
+----+-------+
| 1 | Raman  |
| 2 | Rahul  |
| 3 | Ram    |
| 4 | Mohan  |
| 5 | Aryan  |
+----+-------+

5 rows in set (0.00 sec)
登入後複製

這表示Last_Insert_Id() 必須傳回5 作為輸出,但我們可以看到它傳回值3,如下-

mysql> Select Last_Insert_Id();

+------------------+
| Last_Insert_Id() |
+------------------+
| 3                |
+------------------+

1 row in set (0.00 sec)
登入後複製

它回傳值3,因為3 是上述多行插入查詢中最先插入的行的值。

以上是在多行插入的情況下,對 MySQL LAST_INSERT_ID() 函數的輸出有何影響?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板