mysql_insert_id 的替代方案?
我用谷歌搜索了 mysql_insert_id,关于线程安全问题......我担心我只有一个 MySQL 用户来连接数据库,所以,我认为 mysql_insert_id 对于我的应用程序来说不是很安全。有没有“更安全”的方法从 MySQL 返回最后一个插入 id?谢谢。
I google the mysql_insert_id, about the thread safe concern... ...I am worrying about I only have a one MySQL user to connect DB, so, I think mysql_insert_id is not very safe for my application. Is there any "safer" method for returning last insert id from MySQL? thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
只要没有两个线程共享一个数据库连接,就不应该得到任何错误的 ID。
mysql_insert_id
是按连接存储的,而不是按用户存储的。As long as no two threads share one database connection you should not get any wrong ids.
mysql_insert_id
is stored per connection, not per user.没有更安全的方法,您也不需要任何方法。 PHP 中的
mysql_insert_id()
或SELECT LAST_INSERT_ID()
返回每个当前连接的最后一个ID
,不是每个用户帐户,所以你在这里绝对安全。There is no safer method and you don't need any.
mysql_insert_id()
in PHP orSELECT LAST_INSERT_ID()
returns the lastID
per your current connection, not per user account, so you are perfectly safe here.