在高并发环境下,用PHP向MySQL5.5写入记录,如何返回刚插入的记录的id?
在高并发环境下,用PHP向MySQL5.5写入记录,如何返回刚插入的记录的id?
高并发
高并发
高并发
如何返回当前插入的那条记录的id?
MySQL版本是5.5
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
![扫码二维码加入Web技术交流群](/public/img/jiaqun_03.jpg)
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
在高并发环境下,用PHP向MySQL5.5写入记录,如何返回刚插入的记录的id?
高并发
高并发
高并发
如何返回当前插入的那条记录的id?
MySQL版本是5.5
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
高并发情况就不应该直接写入数据库,应该先给数据生成一个具有唯一性的hash值,然后写入到缓存。同时给客户端返回的是hash值。
再将缓存数据异步写入到数据库。
通过hash值去查数据库就能解决。
The ID that was generated is maintained in the server on a per-connection basis. This means that the value returned by the function to a given client is the first AUTO_INCREMENT value generated for most recent statement affecting an AUTO_INCREMENT column by that client. This value cannot be affected by other clients, even if they generate AUTO_INCREMENT values of their own. This behavior ensures that each client can retrieve its own ID without concern for the activity of other clients, and without the need for locks or transactions.
mysql_insert_id()
, 高并发下也是可用的.mysqli:mysqli_insert_id()
mysql:mysql_insert_id()