php – 使用MYSQL LAST_INSERT_ID()来检索插入行的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,而无需关心其他客户端的活动,也无需锁定或事务. 有关详细信息,请参阅 虽然,如果他们有不同的意见,我很乐意从别人那里读到. (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- MYSQL数据库mysql数据库无法被其他ip访问的解决方法
- xtrabackup备份
- java – Hibernate OnDelete Cascade不适用于MySql,但适用于
- mysql – SQL其中任何列等于一个值
- php – 如何将包含引号的字符串插入数据库?
- 有没有更好的方法为MySQL中的临时表分配权限?
- mysql – 使用Amazon Web Services(EC2等)托管CakePHP应用程
- 在MySQL中使用字符串数据类型而不是使用日期时间数据类型是
- Mysql应用MySQL中数据导入恢复的简单教程
- 为什么SQLAlchemy create_engine与charset = utf8返回pytho