加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

php – 使用MYSQL LAST_INSERT_ID()来检索插入行的ID?

发布时间:2021-03-05 13:17:12 所属栏目:编程 来源:网络整理
导读:我有一个表有一个AUTO INCREMENT列.我必须在插入新行时检索此列的值(我需要新行的值).我已经阅读了很多关于它并找到了不同的解决方案,一个是使用SELECT LAST_INSERT_ID().我听说过很多不同的事情.我可以或不可以使用它吗?我担心另一个连接可能会在我能够调

我有一个表有一个AUTO INCREMENT列.我必须在插入新行时检索此列的值(我需要新行的值).我已经阅读了很多关于它并找到了不同的解决方案,一个是使用SELECT LAST_INSERT_ID().我听说过很多不同的事情.我可以或不可以使用它吗?我担心另一个连接可能会在我能够调用SELECT LAST_INSERT_ID()之前插入一个新行,因此得到错误的ID.

总结一下,使用SELECT LAST_INSERT_ID()是否安全?如果没有,我如何以安全的方式检索最后插入的ID?

最佳答案 我不认为你需要担心你在这里提到的情况.

从Mysql文档:生成的ID在每个连接的基础上在服务器中维护.这意味着函数返回给定客户端的值是为该客户端影响AUTO_INCREMENT列的最新语句生成的第一个AUTO_INCREMENT值.此值不受其他客户端的影响,即使它们生成自己的AUTO_INCREMENT值.此行为可确保每个客户端都可以检索自己的ID,而无需关心其他客户端的活动,也无需锁定或事务.

有关详细信息,请参阅this

虽然,如果他们有不同的意见,我很乐意从别人那里读到.

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读