我的问题很简单。我读过,检索我在 mysqli 中插入的行的 auto_increment/id 值的推荐方法是 mysqli_insert_id()
函数。但是,我不太熟悉并且有一个问题:(此时这都是理论上的)
出于这些目的(因此使用 mysqli 位),这一切都将来自 PHP Web 应用程序。假设多个用户同时在应用程序上,并且在我插入行和调用 mysqli_insert_id()
之间从不同的页面插入另一行?
这会返回一个不正确的值,还是 MySQL 有某种功能可以防止这种情况发生?或者我只是高估了这种情况的可能性?
感谢您的宝贵时间。
最佳答案
mysqli_insert_id()
特定于数据库连接——它返回此脚本调用最近插入的行的 ID,而不是任何其他 MySQL 客户端。因此,如果多个应用程序同时插入数据库,则不会发生冲突。
关于php - mysqli_insert_id : What if someone inserts another row just before I call this?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18264282/