gpt4 book ai didi

php - 检索插入行的索引

转载 作者:行者123 更新时间:2023-11-29 04:31:48 25 4
gpt4 key购买 nike

我正在努力使我正在处理的项目的数据库表保持良好和规范化,但我遇到了一个问题。我试图弄清楚如何将一行插入表中,然后找出 auto_incremented id 列的值设置为什么,以便我可以将其他数据插入另一个表中。我知道有诸如 mysql_insert_id 之类的函数,它“获取从先前的 INSERT 操作生成的 ID”。但是,如果我没记错的话,mysql_insert_id 只是返回最后一次操作的 ID。因此,如果网站有足够的流量,这不一定会返回您想要的查询的 ID,因为在您插入行和查找 ID 之间可能已经运行了另一个查询。这种对 mysql_insert_id 的理解是否正确?非常感谢有关如何执行此操作的任何建议。谢谢。

最佳答案

LAST_INSERT_ID() 具有 session 范围。

它将返回插入到当前 session 中的标识值。

如果您不在 INSERTLAST_INSERT_ID 之间插入任何行,那么它将正常工作。

请注意,尽管对于多个值插入,它将返回插入的第一行的标识,而不是最后一行:

INSERT
INTO mytable (identity_column)
VALUES (NULL)

SELECT LAST_INSERT_ID()

--
1

INSERT
INTO mytable (identity_column)
VALUES (NULL), (NULL)

/* This inserts rows 2 and 3 */

SELECT LAST_INSERT_ID()

--
2

/* But this returns 2, not 3 */

关于php - 检索插入行的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1008359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com